亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

c++日期類的實現

2019-11-08 02:02:43
字體:
來源:轉載
供稿:網友

//功能實現的不是很完全,也借鑒了網上的巧妙方法,如確定每個月的天數用數組直接解決。

//類的定義以及各種操作符的聲明。

Date.h

#include<iostream>

using namespace std;#define num 100;class Date{friend ostream& Operator<<(ostream& _cout, const Date& d);friend istream& operator>>(istream& _cin, Date& d);public:  Date();Date(int year, int month, int day);Date& operator=(const Date& d);Date(const Date& d);~Date();Date ToCurrect(Date& d);int Getdaysinmonth(int year, int month);Date operator -(int days);int operator -(const Date& d);Date operator+(int days);Date& operator++();Date operator++(int);Date& Date::operator--();Date Date::operator--(int);bool operator>(const Date& d);bool operator<(const Date& d);bool operator==(const Date& d);bool operator!=(const Date& d);bool operator<=(const Date& d);bool operator>=(const Date& d);PRivate:int _year;int _month;int _day;

};

//具體的操作的實現

#include"Date.h"Date::Date(){}//構造函數Date::Date(int year = 2000, int month = 1, int day = 1):_year(year), _month(month), _day(day){if ((year<0) ||(month>13&&month<=0) ||(day<=0) && (day>Getdaysinmonth(year, month))){cout << "輸入不合法,請重新輸入:" << endl;//cin >> "year:" >> year >> "month:" >> month >> "day:" >> day >> endl;}}//判斷每個月的天數合法性int Date::Getdaysinmonth(int year, int month){int days[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };if ((((0 == year % 4) && (0 != year % 100)) || (0 == year % 400)) && (month == 2)){days[month] = 29;}return days[month];}//日期合法化Date Date:: ToCurrect(Date& d){if (d._day > Getdaysinmonth(d._year, d._month)){while (d._day > Getdaysinmonth(d._year, d._month)){d._day -= Getdaysinmonth(d._year, d._month);if (d._month == 12){d._year++;d._month = 1;}else{++d._month;}}}else {while (d._day <= 0){if (d._month == 1){d._year--;d._month = 12;}else{--d._month;}d._day += Getdaysinmonth(d._year, d._month);}}return d;}//拷貝構造函數Date::Date(const Date& d){_year = d._year;_month = d._month;_day = d._day;}//賦值運算符的重載Date& Date::operator=(const Date& d){if (this != &d){_year = d._year;_month = d._month;_day = d._day;}return *this;}//析構函數Date::~Date(){//cout << "已被析構" << endl;}//減去任意一個天數Date Date::operator-(int days){if (days < 0){days = 0 - days;}Date temp(*this);temp._day -= days;while (temp._day < 0){if (temp._month == 1){temp._month = 12;temp._day += 31;temp._year -= 1;}else{--temp._month; temp._day += Getdaysinmonth(_year, temp._month);}}return temp;}//兩個天數相減int Date::operator-(const Date& d){Date mindate=*this;Date maxdate=d;int count = 0;if (mindate > maxdate){std::swap(mindate, maxdate);}while (mindate != maxdate){++mindate;count++;}return count;}//加上任意一個天數Date Date::operator+(int days){if (days < 0){days = 0 - days;}else{Date temp(*this);temp._day += days;while (temp._day >Getdaysinmonth(temp._month,temp._day)){if (temp._month == 12){temp._month = 1;temp._day += 1;temp._year += 1;}else{++temp._month;temp._day -= Getdaysinmonth(_year, temp._month);}}return temp;}}//天數的前置++Date& Date::operator++(){++_day;ToCurrect(*this);return *this;}//天數的后置++Date Date::operator++(int){Date temp(*this);temp._day = temp._day + 1;ToCurrect(*this);return temp;}//天數的前置--Date& Date::operator--(){--_day;ToCurrect(*this);return *this;}//天數的后置--Date Date::operator--(int){Date temp(*this);temp._day = temp._day -1;ToCurrect(*this);return temp;}//各種日期見比較的操作符重載bool Date:: operator>(const Date& d){return ((_year > d._year) || ((_year == d._year) && (_month > d._month)) || ((_year == d._year) && (_month == d._month) && (_day > d._day)));}bool Date:: operator<(const Date& d){return ((_year < d._year) || ((_year == d._year) && (_month < d._month)) || ((_year == d._year) && (_month == d._month) && (_day < d._day)));}bool Date::operator==(const Date& d){return ((_year == d._year) && (_month == d._month) && (_day == d._day));}bool Date::operator<=(const Date& d){return ((_year <= d._year) && (_month <= d._month) && (_day <= d._day));}bool Date::operator>=(const Date& d){return ((_year >= d._year) && (_month >= d._month) && (_day >= d._day));}bool Date::operator!=(const Date& d){return !(operator==(d));//return((_year != d._year) && (_month != d._month) && (_day != d._day));}ostream& operator<<(ostream& _cout, const Date& d){_cout << d._year << "-" << d._month << "-" << d._day;return _cout;}istream& operator>>(istream& _cin, Date& d){_cin >> d._year >> d._month >> d._day;return _cin;}void test1(){Date d1(2017,1,4);Date d2(2016,1,1);Date d3(d1);Date d4(d1);int count1 = 0;count1 = d1 - d2;cout << "兩個日期相減為:" << count1 << endl;d4 = d1 - num;cout << "加上num天后為:" << d4 << endl;d3 = d1 + num;cout << "減去num天后為:" << d3 << endl;}int main(){test1();}

//有時間再繼續實現其他更多功能,大二狗。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91视频8mav| 成人情趣片在线观看免费| 黄色成人在线播放| 国产成人涩涩涩视频在线观看| 国产深夜精品福利| 久久视频精品在线| 91香蕉亚洲精品| 国产精品私拍pans大尺度在线| 亚洲欧美国产一区二区三区| 欧美日韩中文字幕在线| 深夜福利日韩在线看| 国产精品av在线播放| 91久久嫩草影院一区二区| 亚洲va欧美va国产综合久久| 亚洲第一级黄色片| 国模精品视频一区二区| 国产精品av在线播放| 欧美电影免费观看高清| 色综合五月天导航| 亚洲第一男人av| 亚洲a级在线播放观看| 色婷婷综合久久久久中文字幕1| 国产91色在线|| 亚洲成人免费网站| 国产综合色香蕉精品| 91丨九色丨国产在线| 在线亚洲男人天堂| 久久精品视频在线| 亚洲午夜未满十八勿入免费观看全集| 一区二区三区 在线观看视| 国产一区二区三区四区福利| 亚洲精品久久视频| 亚洲a成v人在线观看| 亚洲人成在线观看| 91亚洲精品一区| 亚洲乱码一区二区| 日韩在线观看电影| 91精品国产乱码久久久久久久久| 午夜精品福利电影| 国产精品三级在线| 最新中文字幕亚洲| 久久久91精品国产一区不卡| 一区二区亚洲欧洲国产日韩| 中文字幕亚洲图片| 国产精品扒开腿做| 色综合久久中文字幕综合网小说| 一本一本久久a久久精品综合小说| 久久久久在线观看| 欧美日韩国产第一页| 日韩国产高清视频在线| 欧美日韩一区二区精品| 国产亚洲欧美另类中文| 91高清免费视频| 中文字幕国产精品久久| 国产在线拍偷自揄拍精品| 成人h猎奇视频网站| 性色av香蕉一区二区| 国产亚洲精品久久久久久牛牛| 国产一区二区成人| 亚洲精品v欧美精品v日韩精品| 日韩小视频网址| 精品爽片免费看久久| 日韩高清av一区二区三区| 久久久久久成人| 欧美日韩另类在线| 欧美精品情趣视频| 成人情趣片在线观看免费| 国语自产精品视频在线看抢先版图片| 日韩av在线播放资源| 欧美裸体xxxxx| 国产ts一区二区| 国产成人欧美在线观看| 国产在线视频不卡| 久久99热精品这里久久精品| 欧美激情第一页xxx| www.欧美三级电影.com| 青草热久免费精品视频| 久久久久久这里只有精品| 欧美成人在线影院| 日韩福利在线播放| 国产一区二区三区视频在线观看| 久久国产精品久久久久久久久久| 久久久久久久久爱| xxav国产精品美女主播| 亚洲一区二区三区在线视频| 亚洲一区免费网站| 国产精品久久久久aaaa九色| 国产午夜精品视频免费不卡69堂| 91免费国产网站| 亚洲国产精品yw在线观看| 青草青草久热精品视频在线网站| 国产成人免费av电影| 亚洲男人天堂九九视频| 久久天堂av综合合色| 亚洲免费av片| 欧美性xxxx| 欧美另类高清videos| 91在线高清视频| 影音先锋欧美精品| 亚洲石原莉奈一区二区在线观看| 久久久久免费视频| 亚洲成av人影院在线观看| 在线视频亚洲欧美| 欧美精品在线观看| 日本亚洲欧洲色α| 亚洲一区二区精品| 国产精品91在线| 97视频在线观看视频免费视频| 久久精品国产欧美激情| 亚洲欧美另类自拍| 91高清视频免费| 中文字幕在线看视频国产欧美在线看完整| 精品一区二区三区四区| 亚洲全黄一级网站| 国产精品视频区1| 77777亚洲午夜久久多人| 国产主播在线一区| 欧美激情亚洲自拍| 欧美肥臀大乳一区二区免费视频| 96sao精品视频在线观看| 日韩在线视频播放| 欧美大片在线看| 麻豆国产精品va在线观看不卡| 久久久在线免费观看| 九九九久久久久久| 欧美亚洲视频在线看网址| 国产成人久久精品| 91亚洲精品久久久久久久久久久久| 国产精品99久久久久久白浆小说| 一区二区欧美久久| 亚洲欧美在线第一页| 日韩欧美中文字幕在线观看| 久久天堂av综合合色| 热99精品里视频精品| 欧美激情中文网| 国产日韩精品在线观看| 亚洲高清不卡av| 国产精品91视频| 92福利视频午夜1000合集在线观看| 日本成人精品在线| 国产激情久久久久| 国产精品久久久久久av福利| 精品亚洲一区二区| 国产日韩欧美影视| 欧美成人精品一区二区三区| 95av在线视频| 久久夜精品va视频免费观看| 91情侣偷在线精品国产| 欧美一级视频一区二区| 久久久免费观看| 黑人巨大精品欧美一区二区| 国产精品一区=区| 日韩亚洲国产中文字幕| 亚洲18私人小影院| 久久久999国产精品| 欧美精品第一页在线播放| 久久久久久久久综合| 国产精品18久久久久久首页狼| 亚洲日本成人网| 久久精品99国产精品酒店日本| 国产成人97精品免费看片| 日韩激情在线视频| 国产精品久久久久久久久久小说| 欧美性生活大片免费观看网址|