Поделиться через


Предупреждение компилятора (уровень 1) C4258

"переменная": определение из цикла для цикла игнорируется; Используется определение из заключающей область"

В разделе /Ze и /Zc:forScope переменные, определенные вцикле, выходят из область после 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
   }
}