Effective C++学习笔记 (14)

本人学习C++不精,故重新学习,点滴记录与大家分享,不足之处还望大牛多多指教尴尬

在资源管理类中小心copying行为

         对于上一条款所讲的RAII(资源取得时便是初始化时机)原则,本条款对于资源管理类的拷贝行为进行了说明,大概分为以下几种:在执行copy时采用深度拷贝,把管理类的资源也一起拷贝;禁止copy行为(将拷贝构造函数或者赋值运算符私有化);使用引用计数(shared_ptr)。

         其实仔细想想这种做法还是很有必要的,上一条款所讲的两种只能指针中auto_ptr之所以说是一种不完整的,就是因为他没有采用以上三种方法中的任何一种。但是它采用了移除被拷贝者资源的方法来避免两个资源管理对象同时拥有同一个资源,这样一来也保证了一个资源只被一个资源管理对象拥有。总的来说要么保证一个资源只被一个资源管理对象所拥有,要么保证同一个资源在被多个资源管理对象拥有时不会出现被提前释放或者未释放的情况。

         感觉该条款没有太多的代码可以贴,所以就稍微用点文字记录下吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值