3

2012年5月23日の時点で、C ++ 11でコーディングを開始し、すべてのプロジェクトで使用したいと思っています。本当に気に入っている新機能がたくさんあります。しかし、私が持っているコンパイラはどれもC++11から何もサポートしていません。誰かが本やコンパイラを提案できますか?プロジェクトでc++11を使用するのは良い考えですか?qtcreator2.5はc++11をサポートしていますか?

4

2 に答える 2

14

コンパイラの選択は、開発しているプラ​​ットフォームによって異なります。

Gcc4.7とClangはほとんどのC++11機能をサポートしているようですが、Windowsのサポートは主にmingwに限定されていると思います。また、clangはそこでも制限されていると思います。Intel C ++は、gccやclangほど多くのC ++ 11をサポートしていませんが、VC ++を超えており、Windowsを十分にサポートしています。VC ++ 11は優れたコンパイラであり、優れたWindowsサポートを備えていますが、残念ながら、C ++ 11機能、可変個引数テンプレートの欠落、初期化子リストと統一初期化、ユーザー定義リテラル、constexpr、新しい文字列リテラル、デフォルト/削除関数、ctorの委任/継承、テンプレートタイプエイリアスなど。

Linuxをターゲットにしている場合、gccは明らかにそれを強力にサポートしており、clangはそれほど遠くないのではないかと思います。BSDまたはOSXをターゲットにしている場合は、Clangが当然の選択です。

複数のプラットフォームをターゲットにしている場合は、すべてのコンパイラで動作するC++11のサブセットに制限する必要があります。

C ++ 11コンパイラのサポート:http ://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSupport


C++11の本が出始めたばかりです。C ++標準ライブラリの新版があります:チュートリアルとリファレンス。C ++ Concurrency In Actionは、新しいメモリモデル、マルチスレッド、およびアトミック関連のものをかなり徹底的にカバーしています。私の知る限り、これまでのところそれらだけです。オンラインで入手できる記事やものはたくさんありますが、始めるには十分なはずです。

記事と論文

会議


サポートが不足していてもそれが妨げられない限り、C++11を使用することをお勧めします。


QtCreator2.5はC++11をある程度サポートしています:http://labs.qt.nokia.com/2012/03/15/qt-creator-2-5-beta/

于 2012-05-23T19:52:04.893 に答える
0

http://nuwen.net/mingw.htmlからgcc4.7バイナリを入手しました。これにより、ほとんどのC++11機能を使用できます。インストールとセットアップは非常に簡単でした(私はWindows7でCode:: Blocks 10.05を使用しています)。唯一の小さな問題は、gdbが付属していないことでしたが、それは簡単に見つけてダウンロードしてインストールできました。

于 2012-05-23T21:56:06.610 に答える