码迷,mamicode.com
首页 > 其他好文 > 详细

auto_ptr的使用

时间:2017-04-02 17:45:56      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:cto   所有权   理解   内存   变量   拷贝   运算   抛出异常   容器   

其实auto_ptr并不难理解。其本质上是一种类,这个类可以进行指针运算符的操作。但是他可以进行指针的智能管理,克服了裸指针抛出异常时,没有被调用虚构函数的风险。

其使用有一个最简单的逻辑,就是一旦碰见裸指针,就将其交给智能指针去管理。

auto_ptr不能作为STL容器的元素,因为STL在存入元素时,一定要求对元素进行值语义的拷贝,而auto_ptr在拷贝时可能改变右值,因为要转移所有权。

vector<T *>只负责保存指针变量,不负责指针的管理。如果要释放内存,需要手动编写程序进行控制。

auto_ptr的使用

标签:cto   所有权   理解   内存   变量   拷贝   运算   抛出异常   容器   

原文地址:http://www.cnblogs.com/mingdimowang-lyw/p/6659312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!