我一直在尝试为链接排序列表重载等于(==)和小于(bool sortedListClass::operator <(const flightRec& rhs) const{ if (strcmp(flightRec.DestinationCity, rhs.DestinationCity) < 0) { // I'm not sure if flightRec.DestionationCity is what I should write. return true; } else return false;}bool sortedListClass::operator ==(const flightRec& rhs) const{ if (strcmp(flightRec.DestinationCity, rhs.DestinationCity) == 0) { return true; } else return false;}这是错误消息。

最佳答案



您不应该:-)。如果要在某个类上定义operator<,则不要在容器类中执行此操作,而是在要比较哪些对象的类中执行此操作。在这里是flightRec

bool flightRec::operator< (const flightRec& other) {
   // compare this and other
   if (strcmp(this->DestinationCity, other.DestinationCity))
   ...
}

10-06 11:18