编译器警告(等级 4)C4289
使用了非标准扩展 :“var”: 在 for 循环中声明的循环控制变量用在了 for 循环范围外
当用 /Ze 和 /Zc:forScope- 编译时,在 for 循环范围之后使用了 for 循环中声明的变量。
有关如何用 /Ze 指定 for 循环中的标准行为的信息,请参见 /Zc:forScope。
默认情况下关闭此警告。 有关更多信息,请参见默认情况下处于关闭状态的编译器警告。
下面的示例生成 C4289:
// C4289.cpp
// compile with: /W4 /Zc:forScope-
#pragma warning(default:4289)
int main() {
for (int i = 0 ; ; ) // C4289
break;
i++;
}