编译器错误 C2362
“identifier”的初始化被“goto”标签跳过
在通过使用 /Za 进行编译时,跳转到标签会阻止初始化标识符。
如果声明包含在未输入的块中,或者,如果变量已经初始化,则只能跳过具有初始化表达式的声明。
以下示例生成 C2362:
// C2362.cpp
// compile with: /Za
int main() {
goto label1;
int i = 1; // C2362, initialization skipped
label1:;
}
可能的解决方法:
// C2362b.cpp
// compile with: /Za
int main() {
goto label1;
{
int j = 1; // OK, this block is never entered
}
label1:;
}