Delphi 封装了一个很强大的线程类 TThread, 我们也自己动手制作一个简单的线程类 首先Type一个类 type TwwThread = class constructor Create; overload; destructor Destroy; override; private m_hThread: THandle;     //线程 m_ThreadID : TThreadID; public procedure Execute; end; function wwThreadP…
python的类和对象2(self参数) 1.python里面对象的方法都会有self参数,它就相当于C++里面的this指针:绑定方法,据说有了这个参数,Python 再也不会傻傻分不清是哪个对象在调用方法了,你可以认为方法中的 self 其实就是实例对象的唯一标志. 2.__init__(self)称作:魔法方法,类在实例化以后会主动进行调用 举例如下: 3.在python编程里面类的定义里面,类的属性一般可以分为私有和共有两大类,对于一般的属性定义都是指类的共有属性,可以被外界直接访问,而…
结论:基类构造函数中的this指针指向的是派生类的对象 测试代码: #include <iostream> using namespace std; class father; father *pf; class father { public: father() { pf = this; cout << "基类构造中的this指针: " << this <<endl; } }; class son : public father { p…
这个概念主要用在C++中去实现"委托"的特性. 但现在C++11 中有了 更好用的function/bind 功能.但对于类的成员函数指针的概念我们还是应该掌握的. 类函数指针 就是要确定由哪个 类的实例 去调用 类函数指针所指的函数. typedef void (Human::*fp)();  定义了一个类的函数指针. fp classFunc = &Human::run; // 注意这里是方法的地址.告之具体的指向类中的哪个函数 (human->*p)(); 或 (h…
复印控制 --管理指针成员 引言: 包括指针的类须要特别注意复制控制.原因是复制指针时.一个带指针成员的指针类 class HasPtr { public: HasPtr(int *p,int i):ptr(p),val(i) {} int *get_ptr() const { return ptr; } int get_val() const { return val; } void set_ptr(int *p) { ptr = p; } void set_val(int i) { val…
一.关于起因 前几天发了一篇博文,是关于获取VB类模块成员函数指针的内容(http://www.cnblogs.com/alexywt/p/5880993.html):今天我就发一下我的应用实例. VB中默认是没有鼠标移出事件响应的,而这个事件其实在项目开发中,实用性很强,很多时候需要在鼠标移出窗体或控件时做些事情:没有这个事件会感觉很费力: 今天我所说的实际案例就是,在窗体上,设计一个SplitterBar控件,窗体的最终用户使用这个控件可以在运行程序时任意调整其内部控件大小. 二.修改CHo…
智能指针是行为类似于指针的类对象,但这种对象还有其他功能. 本节介绍三个可帮助管理动态内存分配的智能指针模板(auto_ptr.unique_ptr和shared_ptr). void remodel(std:string & str) { std::string * ps = new std::string(str); ... str = ps; return; } 这段代码有缺陷,每当调用时,该函数都分配堆中的内存,但从不回收,从而导致内存泄漏: 但是有解决之道——在return语句前添加下…
如A类的成员变量含有B类的对象,那么每个A类对象产生或拷贝都要产生一次B类对象的构造或者拷贝,对象占的空间比较大,对象拷贝比较消耗内存. 如果换成B类的指针,A类对象拷贝,也只会产生4个字节或者8个字节(根据操作系统而定)的拷贝.…
参考http://blog.chinaunix.net/uid-10535208-id-2949323.html 一.概述 Delphi提供了好几种对象以方便进行多线程编程.多线程应用程序有以下几方面的功能: 1.避免性能瓶颈:单线程应用程序在进行比较慢的操作如磁盘读写的时候,CPU必须停下来等待,直到该操作执行完毕.而多线程应用程序在进行比较慢的操作如磁盘读写的时候,即系执行另一个单独的线程: 2.组织应用才程序的行为:通常,一个程序的行为可以组织成几个功能相互独立的平行的处理过程.将这些独立…
第六节: TList 与泛型   TList 是一个重要的容器,用途广泛,配合泛型,更是如虎添翼. 我们先来改进一下带泛型的 TList 基类,以便以后使用. 本例源码下载(delphi XE8版本): FooList.Zip   unit uFooList; interface uses   Generics.Collections; type     TFooList <T>= class(TList<T>)   private     procedure FreeAllIte…