コンパイラの警告 (レベル 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
   }
}