我对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;
}
答案 0 :(得分:5)
你没有这样做:
#include <string>
如果你正在使用std::string
,那么你应该总是#include <string>
。
此外,我使用Visual Studio 2013编写了代码并编译了它,但未包含<string>
标头。这是错误:
错误C2679:二进制&#39;&gt;&gt;&#39; :找不到哪个操作员需要右手 类型&#39; std :: string&#39;的操作数(或者没有可接受的转换)
答案 1 :(得分:0)
iostream
本身包含string
。
代码很好。检查安装,确保已安装C ++编译器。
正如@FrozenKiwi所说:
默认情况下,Visual Studio的最后几个版本中未安装C ++编译器。您需要修改安装以确保安装编译器(即,开始 - &gt;&#34;更改或删除程序&#34; - &gt; Visual Studio - &gt;更改