二元'运算符' :没有运算符定义采用类型'类型'的左手操作数。 (或者没有可接受的转换)

时间:2016-08-07 01:18:17

标签: c++ compiler-errors operator-overloading

我知道为什么会收到此错误,因为我确实实现了operator ==的{​​{1}}。即使我将Fraction更改为f==0,也无法编译。

f==Fraction(1)

1 个答案:

答案 0 :(得分:4)

您需要将operator== Fraction成员函数设为const成员函数。否则,它不能与此表达式中const的LHS一起使用:

(f==0)