10

Boostは本質的にc++03ライブラリです(これはc ++ 11標準を刺激しました)。私はいくつかのブーストライブラリ(c ++ 11で実装されていないもの)を使用することを考えています。c ++ 11を使用している場合、ブーストコンパイルは実行されますか(コピーできないが移動可能なオブジェクトに問題がある可能性があります)?そして、ブーストはc ++ 11機能をどの程度うまく利用していますか(ブーストMPLの多くの代わりに[一部のブーストライブラリによって]可変個引数テンプレートを使用するのは明らかです)?(ブーストFAQの中にこれを見つけることができませんでした)。

4

2 に答える 2

14

Boost is moving towards using C++11 features.

But one thing to remember is that boost is not "a library", but rather a collection of libraries. Some of them (for example boost::array) probably won't ever be updated to use many c++11 features. Why should it, when you have std::array in the standard (which was based on boost::array?)

On the other hand, Boost would like to remain useful for people who are still using C++03.

Note: Even though I write as if "Boost" is some monolithic entity, there are lots of people who contribute to boost and they have many different opinions. ;-)

To see how well various boost libraries work with C++11 compilers, you can check out the Boost Testing web page.

于 2012-11-28T17:01:36.467 に答える
2

C++11 was made do be as backwards compatible as possible. Unless boost is using reserved keywords that are new to C++11, there is no reason I know of why it shouldn't compile just fine with the new standard.

于 2012-11-28T17:19:18.507 に答える