__cplusplus in Visual Studio 2012
Visual Studio 2012 では、__cplusplus が 199711L として定義されており、「古い」ことを示していることに一部の開発者が気づいています。 VS 2012 には C 11 サポートが含まれていますが、C 標準です。
Background
__cplusplus マクロは、サポートされている C 標準のバージョンを提供するプリプロセッサ マクロです。ビジュアルスタジオ。値 199711L は C 98 標準に対応し、201103L は C 11 サポートを示します。
問題
Visual Studio 2012 では、C 11 ヘッダーが含まれている場合でも、__cplusplus は依然として誤って 199711L として定義されています。これは、C 標準のバージョンを区別するために __cplusplus マクロに依存するコードでは問題となる可能性があります。
解決策
この問題は検討のために Microsoft に報告されています。 「事前定義マクロ __cplusplus の値はまだ 199711L です。」というタイトルの下に表示されます。
以上がC 11 がサポートされているにもかかわらず、Visual Studio 2012 で __cplusplus が 199711L として定義されているのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。