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