編譯器錯誤 C2362
'identifier' 的初始化會被 'goto label' 標籤略過
使用 /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:;
}