在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
看《effective c++》,作者一直强调用std::tr1::shared_ptr,比起auto_ptr好多了。 shared_ptr采用引用计数,多个指针可以指向同一个对象;auto_ptr就不能,只能运行一个指针指向一个对象:如果要指针赋值,那么原来的指针要放弃对该对象的所有权。 恩,以后都用shared_ptr。 shared_ptr在最新的c++11中,已经被列入了标准指针,而auto_ptr则出局了。 说了那么多,shared_ptr采用RAII技术,是防止内存泄露的神器。 按bnu_chenshuo的说法,他最后一次看见代码中的内存泄露还是04年他做实习生的时候。 而C++沉思录的作者AndrewKoenig也极力推荐使用标准库,不用指针。 看下面的程序,我new了一个对象,并没有在程序中使用delete,但是,运行程序,其构造函数仍然运行!这就是shared_ptr,如果要预防内存泄露,它就是最佳选择! 1 # include <iostream> 运行结果:
construct A!!! 转自:http://blog.csdn.net/randyjiawenjie/article/details/6710066 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论