Оператор меньше в C++
< между числами показывает, какое значение меньше.
Для своего класса порядок задают оператором меньше:
метод возвращает bool и помечен const,
если сравнение только читает поля.
После объявления два объекта можно сравнивать знаком
< так же, как числа. Запишем класс Rank
с полем score:
class Rank {
public:
int score = 0;
bool operator<(const Rank& other) const {
return score < other.score;
}
};
Сейчас создадим два объекта и сравним их:
int main() {
Rank low;
low.score = 2;
Rank high;
high.score = 9;
std::cout << (low < high) << "\n";
return 0;
}
Сделайте класс Version с полем code.
Настройте оператор меньше по этому полю. Выведите,
меньше ли версия 2 версии 5.
Создайте два Version с кодами 10 и 10.
Выведите, меньше ли первый второго.