Я написал класс Date, и я пытаюсь попрактиковаться в перегрузке операторов в этом классе.Я пытался перегрузить operator++
, чтобы увеличить день на единицу, но я все еще получаю эту ошибку: не могу увеличить значение типа «Дата»!вот мой метод перегрузки этого оператора:
Date Date::operator++()
{
day++;
if (day > days_of_month(month, year)) {
day = 1;
month++;
if (month > 12) {
month = 1;
year++;
}
}
return *this;
}
, а это метод days_of_month
:
int days_of_month(int m, int y)
{
if (m < 7)
return 31;
else if (m < 12)
return 30;
else if (m == 12)
return is_leap_year(y) ? 30 : 29;
else
abort();
}