Little_hobbit

date.h

Sep 3rd, 2020 (edited)
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.75 KB | None | 0 0
  1. /*
  2.  * Южный федеральный университет, ИКТИБ, кафедра МОП ЭВМ
  3.  * Гатауллин Руслан Рустемович
  4.  * Написано 04.09.2020
  5.  */
  6.  
  7. #ifndef VAR1_DATE_DATE_H
  8. #define VAR1_DATE_DATE_H
  9.  
  10. // Массив дней по месяцам
  11. const int mouths[] = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
  12.  
  13. class Date
  14. {
  15. public:
  16.  
  17.     // Конструктор по умолчанию
  18.     Date();
  19.  
  20.     // Конструктор с тремя полями
  21.     Date(unsigned char day, unsigned char mouth, int year);
  22.  
  23.     Date(Date const &other);
  24.  
  25.     // Вывод даты в поток
  26.     friend std::ostream &operator<<(std::ostream &os, Date const &to_out);
  27.  
  28.     // Ввод даты из потока
  29.     friend std::istream &operator>>(std::istream &is, Date &to_out);
  30.  
  31.     // Прибавление к дате числа
  32.     Date operator+(unsigned long int d);
  33.  
  34.     // Определение дня недели
  35.     unsigned short dayOfWeek() const;
  36.  
  37.     // Получение закрытого поля _day
  38.     unsigned short get_day() const;
  39.  
  40.     // Получение закрытого поля _mouth
  41.     unsigned short get_mouth() const;
  42.  
  43.     // Получение закрытого поля _year
  44.     int get_year() const;
  45.  
  46.     // Передача значения закрытому полю _day
  47.     void set_day(unsigned short);
  48.  
  49.     // Передача значения закрытому полю _mouth
  50.     void set_mouth(unsigned short);
  51.  
  52.     // Передача значения закрытому полю _year
  53.     void set_year(int);
  54.  
  55. private:
  56.     unsigned short _day;
  57.     unsigned short _mouth;
  58.     int _year;
  59. };
  60.  
  61.  
  62. #endif //VAR1_DATE_DATE_H
  63.  
Add Comment
Please, Sign In to add comment