shared_array

头文件: "boost/shared_array.hpp"

shared_array 用于共享数组所有权的智能指针。它与shared_ptr的关系就如scoped_arrayscoped_ptr的关系。shared_arrayshared_ptr 的不同之处主要在于它是用于数组的而不是用于单个对象的。在我们讨论 scoped_array时,我提到过通常std::vector是一个更好的选择。但 shared_arrayvector更有价值,因为它提供了对数组所有权的共享。shared_array 的接口与 shared_ptr非常相似,差别仅在于增加了一个下标操作符,以及不支持定制删除器。

由于一个指向std::vectorshared_ptr提供了比shared_array更多的灵活性,所以我们就不对shared_array的用法进行讨论了。如果你发现自己需要 boost::shared_array, 可以参考一下在线文档。