我正在尝试编写一个运算符!=
函数,用于比较两个复数是否相同。我已经编写了一个等于==
的函数,该函数很好用,但是我试图使用结果的求反。
bool ComplexNumber::operator !=(ComplexNumber a) {
return !(this==(a)); //the == has been overloaded
}
最佳答案
return !(this==(a));
正在将ComplexNumber*
与ComplexNumber
进行比较。改成:
bool ComplexNumber::operator !=(const ComplexNumber& a) const {
return !(*this == a); //the == has been overloaded
}
还为函数和参数添加了
const
限定符(为了避免不必要的复制,我将其改为引用)。如果const
尚不存在,则需要将bool ComplexNumber::operator ==()
限定符添加到ojit_code中。关于c++ - 在另一个检查!=的函数中调用重载的==运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9464876/