Спроектировать и реализовать класс Date
, позволяющий
хранить дату, и производить набор основных операций с датами.
В классе должны быть определены различные конструкторы (по умолчанию, по строке, по трем целым числам (число, месяц, год), конструктор копирования).
Должны быть перегружены следующие операторы: +
(правый операнд - целое число,
обозначающее количество дней),
-
(правый операнд - целое число, обозначающее количество дней),
+=
, -=
,
==
, !=
, <
, >
,
<=
, >=
, <<
(вывод
в поток типа ostream
).
Замечание | |
---|---|
При реализации операций не обязательно учитывать переход с юлианского календаря на грегорианский. |
Для защиты лабораторной работы необходимо представить:
Разработанный класс Date
должен допускать такое использование:
/*...*/ int main() { Date a; Date b("01/12/06"); Date c(2,12,6); if (b+1 != c) cout << "Something wrong\n"; else cout << "As expected\n"; if (b < c) cout << "As expected\n"; else cout << "Something wrong\n"; cout << b++ << endl << c-1 << endl << (b+=7) << endl; return 0; }