我一直在寻找解决问题的方法,而发布的方法似乎无效。我试图在Visual Studio 2012中运行以下命令。我以前在编程中使用了Eclipse,并且正在适应新的IDE。
class
IntSLLNode{
public:
int info;
IntSLLNode *next;
IntSLLNode(){
next = 0;
}
IntSLLNode (int el, IntSLLNode *ptr= 0) {
info = el;
next = ptr;
}
};
int main(){
#include <iostream>
using namespace std;
IntSLLNode *p = new IntSLLNode(18);
cout << *p;
return;
}
当我尝试运行该命令时,它在cout下给我一个错误。我已经像平常一样包含了iostream和std namespace 。那不正确吗?任何人都可以帮助我使它正常工作,因为我非常喜欢Visual Studio IDE的外观,并希望继续使用它。
最佳答案
这里的问题是线
#include <iostream>
using namespace std;
不应在
main
内。相反,它们应该位于程序的顶层。您的程序应该看起来更像#include <iostream>
using namespace std;
/* Other definitions */
int main() {
IntSLLNode *p = new IntSLLNode(18);
cout << *p;
}
此外,您有以下声明
return;
返回
int
的函数内部,这是不允许的。尝试将其更改为return 0;
或者,因为这是
main
,所以只需一起跳过return
即可。希望这可以帮助!