我可以使用std :: shared_ptr而不是boost :: shared_ptr构建boost库

时间:2015-12-10 03:44:18

标签: c++ c++11 boost stl

在c ++ 11项目中,我想尽可能多地使用stl原语而不是boost语句。我虽然仍然需要一些boost库 - 例如filesystem。它虽然使用boost :: shared_ptr。

我的问题是 - 是否有一种方法可以提升切换到使用std :: shared_ptr以及如何使用?

1 个答案:

答案 0 :(得分:2)

Boost是否有配置设置使其使用std::shared_ptr?不一般。 Boost.Asio apparently has a way to make the internals use std::shared_ptr(似乎在std::shared_ptr可用时自动启用)。但是没有针对此提升Boost的设置。

你可能会做一些找到 - 替换体操让它发挥作用。当然,这假设Boost库中没有一个对Boost的内部结构做出假设。并且他们都没有访问其内部。并且boost::shared_ptrstd::shared_ptr没有任何界面差异。

它不值得付出努力。让Boost在内部使用它想要的任何代码。它对您来说唯一重要的地方是接口,很少有Boost库实际上在代码的接口中使用boost::shared_ptr。实际上,我在Boost 1.59文档上搜索了std::shared_ptr的Google网站,我发现它甚至被引用的唯一地方就在我上面链接的文档中。

相关问题