如果你重载operator ==你还需要重载operator!=?

时间:2015-04-21 21:52:25

标签: c++ boost operator-overloading

我正在使用BOOST_STRONG_TYPEDEF宏,它会创建一个重载operator==的类。我想知道我是否还需要重载operator!=

2 个答案:

答案 0 :(得分:5)

答案:不!

原因(我最初没有注意到)是BOOST_STRONG_TYPEDEF使用Boost运算符(http://www.boost.org/doc/libs/1_38_0/libs/utility/operators.htm),特别是totally_ordered1和totally_ordered2。因此,为您实现了小于和等于比较运算符。

答案 1 :(得分:2)

嗯,不。这些操作员完全独立,如果你不使用它,你可以超载一个而不是另一个