现在我正在重写我的代码的一部分以使用C ++ 11标准。在某些地方,我发现了以下代码:
boost::shared_array<uint8_t> array;
是否可以用以下内容替换它:
std::shared_ptr<std::vector<uint8_t>> array;
我正在尝试在我的代码中替换C ++ 11中已经提供的所有boost功能。
我需要澄清一下。实际上我需要一个原始数组(但使用refcount,因此可以自动删除),不需要所有这些矢量功能。因此boost :: shared_array解决了我想要的问题而无需任何额外费用。但是我正在努力让我的代码尽可能地使用新标准(虽然许多来自boost的库仍未被新标准所涵盖)。
感谢。
答案 0 :(得分:4)
鉴于编译器中C ++ 11支持的当前状态以及维护构建的人们的懒惰,我现在将其保留原样。 Boost几乎可以在任何地方工作,包括旧编译器,并且您想要进行的更改很难改进代码。
此代码也不完全相同。