Задача 13
Задача 13: Создайте класс, который будет содержать информацию о дате (день, месяц, год). С помощью механизма перегрузки операторов, определите операцию разности двух дат (результат в виде количества дней между датами), а также операцию увеличения даты на определенное количество дней.
/* * Created on January 12, 2011, 11:38 AM */ #include <cstdlib> #include <iostream> #include <ctime> #include <cstdio> using namespace std; class myClassDate { struct tm *initime; time_t rawtime; struct mydate { int my_day; int my_mon; int my_year; } myinitdate; public: myClassDate();//конструктор myClassDate(const myClassDate &c){};//конструктор копирования ~myClassDate(){};//деструктор myClassDate operator-(const myClassDate &N) { myClassDate temp; temp.myinitdate.my_day=myinitdate.my_day-N.myinitdate.my_day; //temp.dig=dig-N.dig; return temp; } void printdate(){cout<<myinitdate.my_day<<myinitdate.my_mon<<myinitdate.my_year<<"\n"; }; void addday(int days); }; myClassDate::myClassDate() { rawtime = time (NULL); initime = localtime (&rawtime); myinitdate.my_day=initime->tm_mday; myinitdate.my_mon=initime->tm_mon; myinitdate.my_year=initime->tm_year; } void myClassDate::addday(int days) { if (myinitdate.my_day+days>31) cout<<"Error! myinitdate.my_day+days>31"<<"\n"; else myinitdate.my_day+=days; } int main(int argc, char** argv) { myClassDate A,B,C; A.printdate(); A.addday(40); //Error A.addday(5); A.printdate(); //разность двух дат B.printdate(); C=A-B; C.printdate(); return (EXIT_SUCCESS); }
📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!
7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Китайский VPN Shadowsocks простая установка и настройка
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах