无法识别操作员>>和<<



我对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->更改

最新更新