boost::scoped_ptr 是一个智能指针,它是动态分配对象的唯一所有者。 boost::scoped_ptr 无法复制或移动。此智能指针在头文件 boost/scoped_ptr.hpp 中定义。
scoped_array 的类部分原始代码如下:
-
- template<class T> class scoped_array // noncopyable
- {
- private:
-
- T * px;
-
- scoped_array(scoped_array const &);
- scoped_array & operator=(scoped_array const &);
-
- typedef scoped_array
this_type; -
- void operator==( scoped_array const& ) const;
- void operator!=( scoped_array const& ) const;
-
- public:
-
- typedef T element_type;
-
- explicit scoped_array( T * p = 0 ) BOOS