2011-05-12 257 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是不正确的,在结束]