【发布时间】:2016-12-01 08:09:08
【问题描述】:
给定以下代码;
#include<iostream>
using namespace std;
int main(){
int number_1 = 3;
int result_1 = 10;
result_1 += number_1;
cout << ++result_1;
cout << result_1 += number_1;
}
cout << result_1 += number_1; 行给了我一个错误。
'operator+=' 不匹配(操作数类型为 'std::basic_ostream' 和 'int')
另一方面,cout << ++result_1; 运行时没有任何问题。
谁能解释一下错误是什么原因,是什么原因?
【问题讨论】:
-
cout << result_1返回cout对象。该对象没有+=整数重载。 -
此外,将计算与输出混合通常不是一个好主意。如果您先计算所有值并稍后执行输出,则通常会导致代码更清晰,错误更少。 (你刚刚找到了其中之一 :-)
标签: c++ compiler-errors operators