我试图在 C++ 中重载 + 运算符,但得到以下错误:
operator.cpp:在函数'int main()'中:
operators.cpp:23:17:错误:无法在初始化中将'Operators'转换为'int'
这是我的代码:
#include <iostream>
using namespace std;
class Operators{
private:
int num1;
public:
Operators(int num1){
this->num1 = num1;
}
Operators operator+(Operators o){
return Operators(num1 + o.num1);
}
};
int main(){
Operators o1(5);
Operators o2(10);
Operators res = o1 + o2; // EDITED
cout << res;
}
请你帮助我好吗?
我知道,在这种情况下,重载它是没有意义的,正如我可以说的那样5+10
,但我只是在试验。
更新
谢谢,我已经编辑了int
.
但现在我收到以下错误:
运营商.cpp:在函数'int main()'中:
运营商.cpp:25:10:错误:匹配'std :: cout << res'<br>中的'operator <<' [...]