6

现在我正在重写部分代码以使用 C++11 标准。在某些地方我发现了以下代码:

boost::shared_array<uint8_t> array;

是否可以将其替换为:

std::shared_ptr<std::vector<uint8_t>> array;

我正在尝试替换我的代码中已经在 C++11 中提供的所有 boost 功能。

我需要澄清一下。实际上我需要一个原始数组(但带有引用计数,因此可以自动删除),不需要所有这些矢量特征。所以 boost::shared_array 解决了我想要的问题,无需任何额外费用。但是我试图让我的代码尽可能地使用新标准(尽管来自 boost 的许多库仍然没有被新标准涵盖)。

谢谢。

4

1 回答 1

4

鉴于编译器支持 C++11 的现状以及维护构建的人们的懒惰,我将保持原样。Boost 具有几乎可以在任何地方工作的好特性,包括旧的编译器,您想要进行的更改几乎不会改进代码。

这段代码也不完全相同。

于 2013-05-13T11:18:04.050 回答