10

VC++2010のC++0xモードにはオフスイッチがありますか?私は0x以外のコンパイラでコンパイルすることになっているプロジェクトに取り組んでいるので、現在の標準に対してコンパイルしたいと思います。(新機能のいずれも直接使用されていない場合でも、C ++ 0xをより寛容にする微妙な点があります)。

私が見つけた最も近いスイッチはでしConfiguration Properties -> C/C++ -> Language -> Disable Language Extensionsたが、そうではありません。

4

2 に答える 2

13

いいえ、言語拡張は通常、非標準のベンダー固有の追加です。

C ++ 0X機能:これらの機能をオフにする直接的な方法はありません。1つの回避策は、それらを使用しないことです。ただし、VCランタイムのバージョン間でパフォーマンスに著しい違いがあることに注意してください。VC10は移動セマンティクスを実装し、標準ライブラリ(std::stringたとえば)はこれらの機能を惜しみなく使用します。

私の意見では、妥当な妥協案はVS2008に戻すことです。最近のVSバージョンは(これまでのところ、私の経験では)バグが多いことで有名であり、ServicePackなしでは正常に機能しませんでした。VS2008は現在かなり安定しており、これらのC ++ 0x機能はなく、請求に適合するはずです。

于 2010-08-21T04:14:09.037 に答える
3

VS2010でvc2008ツールセットを使用できるようです。参照:Visual C++2010とVC2008の互換性

于 2011-02-04T03:04:56.813 に答える