不能编译这样简单的东西,但是当我将变量类型从 字符串更改为int时,它编译并运行良好。任何想法为什么发生这种情况?输入字符串
#include <iostream>
using namespace std;
void main()
{
string x;
cin>>x;
}
不能编译这样简单的东西,但是当我将变量类型从 字符串更改为int时,它编译并运行良好。任何想法为什么发生这种情况?输入字符串
#include <iostream>
using namespace std;
void main()
{
string x;
cin>>x;
}
您需要:
#include <string>
要获得的std :: string在您的应用程序。
很感谢。我认为“使用命名空间标准”就足够了。为什么不是? – user620189 2011-02-22 21:46:44
因为“using namespace std;”仅将std名称空间中的* defined *符号带入全局名称空间。如果不包含标题,那么符号“字符串”在任何地方都没有定义。一旦你包含了头文件,就定义了头文件,并且如果你有正确的使用语句,你可以引用符号为std :: string或者字符串。 – 2011-02-22 21:51:02
明白了。非常感谢。 – user620189 2011-02-22 21:53:30
“它不会编译”就像你可以得到的那样不具有说服力。 *为什么*不编译?如果你得到一个错误,它是什么? – 2011-02-22 21:42:58