2

Visual Studio 2010 で C++ ネイティブ ソリューションを使用する。

#pragma warning (push)すべてのインクルードの後、cpp ファイルの先頭で使用されます。その後、によって無効化された警告がいくつかあります#pragma warning(disable : XXXX)

#pragma warning(pop)ファイルの末尾を省略すると、どのような結果が生じる可能性がありますか?

ありがとう

4

2 に答える 2

2

その cpp ファイルに他のソース ファイルが#includeある場合、外側のファイルをコンパイルするときの警告状態が台無しになります。

ただし、#includecpp ファイルを ing することは悪い形式であり、コードのにおいがすると見なされることに注意してください。まれに、それが正しいことかもしれない状況があります (#includeコンパイル時間を短縮するために多くのソース ファイルを 1 つにまとめたビルド システム、プリコンパイル済みヘッダーのようなものなど) が、ほとんどの場合、それは間違ったことです。 、エラーなしでコンパイルおよびリンクできたとしても。

そのソースファイルが#include他のどこにも d されてい#pragma warning(pop)ない場合、そもそもコンパイラがその不一致について文句を言わないと仮定すると、 a がなくても悪影響はありません。

于 2012-08-16T23:14:58.733 に答える
1

これはコンパイラのみの設定であるため、プログラム自体には影響しません。ただし、外部インクルードの警告を台無しにする可能性があります。

于 2012-08-16T22:48:57.460 に答える