#include "Date.h" std::ostream &operator<<(std::ostream &out, const Date &date) { return out << date.toString(); } Date::Date(unsigned int day, unsigned int month, unsigned int year) : day(day), month(month), year(year) {} std::string Date::toString() const { return std::to_string(day) + ", " + std::to_string(month) + ", " + std::to_string(year); } bool Date::operator==(const Date &other) const { return this->year == other.year && this->month == other.month && this->day == other.day; } Date& Date::operator++() { day++; if (months[month - 1] < day) { month++; day = 1; } if (month == 13) { year++; month = 1; } return *this; } Date Date::operator++(int dummy) { Date tmp(day, month, year); day++; if (months[month - 1] < day) { month++; day = 1; } if (month == 13) { year++; month = 1; } return tmp; } Date Date::operator+(int days) { Date tmp(day,month,year); tmp.day += days; // while (months[tmp.month - 1] < tmp.day){ // tmp.day = tmp.day - months[tmp.month-1]; // tmp.month++; // if (tmp.month == 13) { // tmp.year++; // tmp.month = 1; // } // } for(int i = 0; i