conform
C++ 仕様
/Zc: forScope コンパイラ オプションの実行時の動作を指定します。
#pragma conform(name [, show ] [, on | off ] [ [, push | pop ] [, identifier ] ] )
パラメーター
name
変更されたコンパイラ オプションの名前を指定します。有効な 名前は のみ forScope です。示します。(省略可能)
名前 の現在の設定 (true または false) コンパイル中に警告メッセージが表示されます。たとえば、#pragma conform(forScope, show) のようにします。(省略可能)
を に設定 /Zc: forScope 名は コンパイラ オプションを使用できます。既定値は オフ です。プッシュ (省略可能)
コンパイラの内部スタックに現在の値を押します。 識別子を 指定すると 名前 に を または オフ の値を押す必要スタックに指定できます。たとえば、#pragma conform(forScope, push, myname, on) のようにします。pop (省略可能)
名前 の値を値にコンパイラの内部スタックに設定しスタックをポップされます。識別子が pop と指定するとスタックはポップ 識別子 を持つレコードが見つかるまで; ポップされます。スタックの次のレコードの 名前 の現在の値が 名前 の新しい値になります。スタックのレコードにない 識別子 を持つ pop を指定するとpop は無視されます。識別子 (省略可能)
プッシュ または pop のコマンドに含めることができます。 識別子が 使用されている場合 を または オフ の指定子は使用できます。
使用例
// pragma_directive_conform.cpp
// compile with: /W1
// C4811 expected
#pragma conform(forScope, show)
#pragma conform(forScope, push, x, on)
#pragma conform(forScope, push, x1, off)
#pragma conform(forScope, push, x2, off)
#pragma conform(forScope, push, x3, off)
#pragma conform(forScope, show)
#pragma conform(forScope, pop, x1)
#pragma conform(forScope, show)
int main() {}