2011-05-12 305 views
0

的代碼是這樣C++編譯器錯誤C2362

{ 
    int a; 

    if(a == 0) 
    { 
      std::string str("some"); 
      goto CLEANUP; 
    } 


return; 
CLEANUP: 
    printf("CLEANUP"); 


} 

這是給我錯誤編譯器錯誤C2362 初始化「標識符」由「轉到標號」

跳過的我移動的std :: string str(「some」);int a;它仍然是給我同樣的錯誤

+0

GOTO是我知道不好的風格,但它已經被以前的程序員寫過。 – Vijay 2011-05-12 05:03:15

+0

它看起來像最後的一些代碼搞砸了? – 2011-05-12 05:05:33

+3

發佈**實際**代碼 – 2011-05-12 05:27:46

回答

4

難道你:

goto CLEANUP: 

應該是:

goto CLEANUP; 

(分號沒有冒號)

+0

對不起,但是,我想解決編譯器錯誤。 – Vijay 2011-05-12 06:41:36

3
goto CLEANUP: 

應,

goto CLEANUP; 

[此外,請確保您的代碼編譯爲printf是不正確的,在結束]