【发布时间】:2013-06-28 12:15:12
【问题描述】:
Boost 文档说
从 Boost 版本 1.53 开始,shared_ptr 可用于保存 指向动态分配数组的指针。
我有一个简单的类并使用boost::shared_ptr 在其中保存std::deque 数组:
boost::shared_ptr<std::deque<uint32_t> []> someArray;
我想要一个方法来从数组中返回指定的双端队列以进行只读:
std::deque<uint32_t> MyClass::myMethod(boost::uint32_t arrayIndex) const{
return someArray[arrayIndex];
}
这种做法是不是违反了对象的恒常性?
【问题讨论】:
-
std::deque
不是数组 -
这个
boost::shared_ptr<std::deque<uint32_t> >只是一个指向双端队列的共享指针,它不是指向双端队列数组的共享指针。 -
抱歉,这是一个字面错误。我的意思是相同的结构。我将编辑我的问题
标签: c++ boost shared-ptr