c++编程思想学习笔记
zyh_helen
Helen , 他 , 很努力 !
展开
-
【c++编程思想学习笔记】解决浅拷贝的两种方法:(深拷贝)(引用计数+写拷贝)
当类中含有指针类型的数据成员时,使用默认的拷贝构造函数或者赋值操作,将导致浅拷贝的问题解决办法:1:使用深拷贝:实现拷贝构造函数以及赋值操作时,为指针开辟新的空间2:引用计数+写拷贝引用计数:当对象需要大量的内存或者过高的初始化,为了避免这种拷贝。使一块存储单元具有智能,它知道有多少对象指向它。拷贝构造函数或赋值运算意味着把另外的指针指向现在的存储单元并原创 2015-08-12 15:08:41 · 1107 阅读 · 0 评论 -
【c++编程思想学习笔记】operator=为何要检查自赋值的解答
做类似下面的事时,就会发生自己给自己赋值的情况:class X { ... };X a;a = a; // a赋值给自己复制代码这种事做起来好象很无聊,但它完全是合法的,所以看到程序员这样做不要感到丝毫的怀疑。更重要的是,给自己赋值的情况还可以以下面这种看起来更隐蔽的形式出现:a = b;如果b是a的另一个名字转载 2015-08-12 15:15:00 · 1516 阅读 · 0 评论