我已经安装了visual studio express 2010 c ++。然而,当试图跟随初学者书并制作hello world程序时,visual studio打开了一个项目:
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
return 0;
}
问题是,这看起来与我刚刚开始阅读的书中的c ++(C ++ Without Fear)完全不同。事实上,如果我输入'cout',即使在输入使用命名空间std之后,也找不到cout。
这是书籍的例子:
#include "stdafx.h"
#include <iostream>
using namespace std;
int main() {
cout << "Never fear, C++ is here!";
return 0;
}
我错过了什么吗?
正如亚历克斯所说,从C ++ Win32控制台项目开始,但选择空项目,以便IDE不会自动填写内容!转到解决方案资源管理器中的源文件,右键单击它并添加新项目并选择C ++文件(例如,将其命名为main.cpp)。
那时你应该准备好了。
试试我为你准备的示例代码......
#include <iostream>
using namespace std;
int main(char *argv[], int argc) {
cout << "Hello World!" << endl;
return 0;
}
它应该打印出Hello World!在控制台中。
创建Windows(或Win32,不记得确切)C ++ Console Application项目,不要选择C ++ / CLI项目类型。
C ++ / CLI是一种非常特殊的语言,仅用于托管代码和非托管代码之间的互操作性。在这个阶段最好忘记C +++ / CLI ...
您想要从Visual C ++ Win32控制台应用程序开始。
如果要完全创建自己的文件(即没有主文件定义的存根文件),可以在Win32应用程序向导的选项中选中“清空项目”。
这不是C ++。这就是所谓的“托管”C ++。基本上,Microsoft完全不同的语言与其.NET平台兼容。例如,您可以将C#代码和托管C ++代码混合在一个二进制文件中。这项技术非常适合Microsoft,并且不能移植到任何其他编译器/操作系统(即使是Mono,它是C#for Linux,没有它)。有关详细信息,请参阅Managed Extensions for C++。