我对c++很陌生,正在尝试掌握它。下面的代码是教程的精确副本,其中的代码适用于导师。但是我的IDE(Visual Studio)返回错误:
Error: No operator ">>" matches these operands.
Error: No operator "<<" matches these operands.
我错过了什么?
我的代码
#include <iostream>
using namespace std;
int main() {
cout << "Enter you name" << flush;
string input;
cin >> input; //Error as above message
cout << "your name is " << input << endl; //Error message on the << operator before input
cin.get();
return 0;
}
您没有这样做:
#include <string>
如果您使用的是std::string
,那么您应该始终#include <string>
。
此外,我还获取了您的代码,并使用Visual Studio 2013对其进行了编译,其中不包含<string>
标头。错误如下:
错误C2679:binary">>":找不到占用右手的运算符类型为"std::string"的操作数(或者没有可接受的转换)
显然,我错了,请检查另一个答案。我被g++欺骗了,说代码很好,因为正如@Joachim所说;则可能是CCD_ 5本身包括CCD_。
代码很好。请检查您的安装,确保已安装C++编译器。
正如@FrozenKiwi所说:
默认情况下,Visual Studio的最后几个版本中没有安装C++编译器。您需要修改安装以确保编译器已安装(即,启动->"更改或删除程序"->Visual Studio->更改