摘要:
一: 在代理类的帮助下,我们已经可以实现在一个容器里存储一个类层次里所有类型的对象,但是代理有一个很明显的缺点,就是需要复制对象,当一个对象非常大或者是一种不能轻易复制的资源的时候,这个实现遇到了很大的困难,于是我们有了句柄(handle)类这个技术。 我们有这么一个类class point{public:point():x_cdt(0),y_cdt(0){}point(int x,int y):x_cdt(x),y_cdt(y){}int get_x(){ return x_cdt; }int get_y(){ return y_cdt; }point& set_x(int x)// 阅读全文
摘要:
重点:包含动态分配成员的类 应提供拷贝构造函数,并重载"="赋值操作符。以下讨论中将用到的例子:class CExample{public: CExample(){pBuffer = NULL; nSize = 0;} ~CExample(){delete pBuffer;} void Init(int n){ pBuffer = new char[n]; nSize = n;}private: char *pBuffer; //类的对象中包含指针,指向动态分配的内存资源 int nSize;};这个类的主要特点是包含指向其他资源的指针。pBuffer指向堆中分配的一段内存 阅读全文