C++コードをさまざまなC++コンパイラ間で移植できるようにしたい場合は、C ++ 11の使用を開始する時期ですか、それともすべての主要なコンパイラ(VC、 GCC、CLang、Intel)?
言い換えれば、主要なコンパイラーの間でのC ++ 11サポートの状況はどうですか?
Clang(定期的に更新):
GCC 4.5から4.7(定期的に更新):
Visual C ++ 10および11(少し古いですが、私が見つけた最新のものです):
http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx
すべての主要なコンパイラの最近のバージョンは、いくつかのC++11機能をサポートしています。ただし、完全にサポートされているコンパイラはまだありません。コードを移植可能にする場合は、すべての人が最新バージョンのコンパイラを使用しているわけではないことも考慮する必要があります。
したがって、答えは「状況によって異なります」です。
すべての主要なコンパイラでサポートされている機能は多数あります。(auto
たとえば、右辺値の参照とラムダは広く利用可能です)。
すべてではありませんが、一部のコンパイラで使用できる機能もたくさんあります。
@Kosによって投稿されたリンクは、各コンパイラがどこにあるかについての良いアイデアを与えるはずです。
C ++ 11の使用を開始できるかどうか、または開始する必要があるかどうかは、完全にあなた次第です。
上記のWebサイトに加えて:コンパイラーでc++11機能をサポートする正確なバージョンを含むさまざまなコンパイラーの比較は次のとおりです。
http://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSupport
リストされているコンパイラ:
HP aCC、EDG eccp、GCC、Intel C ++、MSVC、IBM XLC ++、Sun / Oracle C ++、C ++ Builder 2009/10、Digital Mars C ++、Clang