c++三种使用shared_ptr的方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhouxuguang236/article/details/52504195

在c++中,我们是越来越多的使用智能指针,其中我们说的智能指针通常是指基于引用计数的智能指针,在c++11标准中就是std::shared_ptr。它的特点是可以安全的放入STL容器中。

有以下三种方式可以使用shared_ptr

1、如果你的c++编程环境支持c++ 11标准,那么可以直接使用std::shared_ptr,它定义在memory文件中。

2、如果你的c++实现支持C++ TR1库扩展,那么可以使用std::tr1::shared_ptr。在Vc++编译器下是在<memory>定义,如果是linux下g++,那么定义在<tr1/memory>文件中。Boost也提供了TR1实现。

3、否则的话,你可以使用Boost中的boost::shared_ptr,它定义在<boost/shared_ptr.hpp>文件中。


注:vs2008需要装SP1才支持TR1实现。

猜你喜欢

转载自blog.csdn.net/zhouxuguang236/article/details/52504195