10

Boost 本质上是一个 c++03 库(它激发了 c++11 标准)。我正在考虑使用一些 boost 库(那些没有在 c++11 中实现的库)。如果我使用的是 c++11,boost 是否编译(可能存在不可复制但可移动的对象的问题)?以及 boost 对 c++11 特性的使用效果如何(可变参数模板是[由一些 boost 库] 使用的显而易见的东西,而不是 boost MPL 的大部分)?(我在 boost FAQ 中找不到这个)。

4

2 回答 2

14

Boost 正朝着使用 C++11 特性的方向发展。

但要记住的一点是,boost 不是“库”,而是库的集合。其中一些(例如boost::array)可能永远不会更新为使用许多 c++11 功能。为什么要这样做,当你有std::array标准时(这是基于boost::array?)

另一方面,Boost 希望对仍在使用 C++03 的人保持有用。

注意:尽管我写的“Boost”好像是一个单一的实体,但有很多人为 Boost 做出贡献,他们有很多不同的意见。;-)

要了解各种 boost 库如何与 C++11 编译器配合使用,您可以查看Boost Testing网页。

于 2012-11-28T17:01:36.467 回答
2

C++11 尽可能向后兼容。除非 boost 使用的是 C++11 新的保留关键字,否则我没有理由知道为什么它不应该用新标准编译得很好。

于 2012-11-28T17:19:18.507 回答