Есть ли способ вызвать перегрузку оператора в C ++ и вызвать функцию параметра во время сравнения?
Например:
class MyClass{
private:
int x;
int y;
public:
MyClass(int x, int y);
int getX();
int getY();
bool operator < (const MyClass &other) const {
return (x < other.getX()); //this does not work!
// this would work, though, if x was public:
// return x < other.x;
}
};
По сути, где я вызываю other.getX(), как я могу заставить его возвращать свое собственное значение x через функцию для сравнения с локальной, вместо того, чтобы делать x общедоступным?Есть ли способ сделать это?
Спасибо за вашу помощь!