#include using namespace std; date.h class date { int days; date(int d = 0) : days(d) {} date& operator++() { days++; return *this; } date& operator+=(int n) { days += n; return *this; } friend date operator+(const date& d, int n) { return date(d.days + n); } friend int operator-(const date& d1, const date& d2) { return d1.days - d2.days; } friend bool operator==(const date& d1, const date& d2) { return d1.days == d2.days; } friend ostream& operator<<(ostream& os, const date& d) { return os << "Date(" << d.days << ")"; } }; int main() { date d; operator++(d); d.operator+=(280); const date e{operator+(d, 7)}; int n{operator-(e, d)}; const date midpoint{operator+(d, n/2)}; if (operator==(d, d)) { operator<<(cout, d) << " "; operator<<(cout, operator++(d)) << "\n"; operator<<(operator<<(cout, d), "\n"); } return EXIT_SUCCESS; }