这是我的第一个StackOverflow,很高兴加入。 我目前正在使用Stroustrup"使用C ++进行编程和练习来学习C ++"现在我们正在使用他创建的库(#include" std_lib_facilities.h")
我完成了一次练习并得到了这个错误 "不匹配'运营商<<' (操作数类型是std :: istream)"
我写的程序可能还不完美,但我现在甚至无法编译它。我在其他帖子中读到过关于"重载运算符"但是我不明白这意味着什么,特别是为什么在我的其他文件中,即使加载了相同的库也不会发生这种情况。
#include "../../std_lib_facilities.h"
int main()
{
double val1 = 0;
double val2 = 0;
cin << val1 << val2 << endl;
if (val1>val2)
cout << val1 << " is larger than " << val2 <<endl;
else
cout << val1 << " is smaller than " << val2 <<endl;
}
答案 0 :(得分:1)
您应该将operator>>
与std::cin
一起使用,这是std::istream
并且不支持operator<<
。
std::cin >> val1 >> val2;
答案 1 :(得分:1)
您应该使用&gt;&gt;运算符用于在c ++中输入。这称为提取运算符,用于从键盘或其他类似文件中获取值。语法是:
int variableName;
cout << "Enter number";
cin >> variableName;
<强>&LT;&LT; operator 是插入操作符,用于在屏幕或文件上写入数据。