您的位置:首页 > 编程语言 > C语言/C++

effective c++ 读书笔记

2014-04-14 16:37 302 查看
item 12:复制对象时不要忘记复制每一部分。
主要针对的就是copy assignment = 操作符。
在默认的情况下,对每一个对象,不管是基类还是父类,都会构建一个复制其每一个成员的默认 赋值操作函数。这其中就有浅拷贝的问题。

所以我们会自己写一个赋值操作函数。

但是,我们写了基类的赋值操作函数 之后,子类的默认赋值操作,也会同样使用父类的赋值操作。这回丢掉子类的一些成员

所以我们需要写 子类 的赋值操作函数 -- 注意,我们写了子类的赋值 操作函数时,也要在其中注明 对父类的 赋值操作。

item 13 -17 智能指针

auto_ptr :一个 指针 智能被一个对象拥有 若有 a = b 或 a(b) 的操作 则a 获得指针,而b = NULL。
问题,都是delte 而不是delete []

item 14:资源管理类的 copy 问题, 资源的拥有权如何交接。
1.计数,2,复制3,转移,4禁止复制。从一个禁止复制的父类继承(将 operator = 设为private)

shared_ptr 多个对象,共享同一个对象,并 共享同一个计数器。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: