コンパイラの警告 (レベル 1) C4258
'variable' : for ループからの定義は無視されます。外側のスコープからの定義が使われます
/Ze および /Zc:forScope では、for ループ内で定義された変数は for
ループの終了後にスコープ外になります。 この警告は、ループ変数と同じ名前だが外側のループ内で定義されている変数が、for
ループを包含しているスコープで再び使用された場合に発生します。 次に例を示します。
// C4258.cpp
// compile with: /Zc:forScope /W1
int main()
{
int i;
{
for (int i =0; i < 1; i++)
;
i = 20; // C4258 i (in for loop) has gone out of scope
}
}