Я использую этот код в своем предыдущем вопросе: Добавление года реализация на С++ с использованием класса
Я хочу использовать оператор if для проверки дат таким образом, чтобы, если день был 31, он возвращался к 0, а месяц увеличивался на единицу. Я даже пытался написать другой метод и использовать его внутри операции +, но это тоже не удалось, потому что я увеличиваю день в функции возврата внутри объявления операции. В результате его необходимо будет увеличить перед первой проверкой условий! но что, если число изначально было 31? нет месяца, в котором 32 дня!
Я пытался использовать его, но из-за моей реализации он не работал должным образом.
Мой другой вопрос заключается в том, что я пытаюсь использовать логическую проверку ссылок с операцией ==
Это то, что я сделал до сих пор:
bool operator==(const Date&) const;
bool Date::operator==(const Date& date) const
{
if (day == date.day && monthnum == date.monthnum && year == date.year)
return true;
else return false;
}
но по какой-то причине, когда я пытаюсь проверить его в основном, говоря, например, date1 == date2, он не компилируется! я неправильно пишу?
«нет операции == соответствует этим операндам» это ошибка, которую я получаю, когда пытаюсь скомпилировать код