編譯器警告 (層級 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
}
}