日期類的簡單實現

2021-10-04 19:05:35 字數 2046 閱讀 4675

這篇部落格簡單實現乙個日期類,直接發**

class

date;if

(month ==2&&

((year %4==

0&& year %

100!=0)

|| year %

400==0)

)else

}//這個函式的功能是輸入年和月來判斷這個月的天數

date

(int year =0,

int month =1,

int day =1)

else

}//判斷日期是不是合法日期

inline

bool

operator

<

(const date& d)

return

false;}

//判斷日期的大小

inline

bool

operator==(

const date& d)

inline

bool

operator

<=

(const date& d)

// d1 > d2

inline

bool

operator

>

(const date& d)

inline

bool

operator

>=

(const date& d)

inline

bool

operator!=(

const date& d)

// ++d1;

// d1.operator++(&d1)

date&

operator++(

)// d1++ // 後置++多呼叫兩次拷貝構造,建議使用前置++

// d1.operator++(&d1, 0)

date operator++(

int)

// 為了區分於前置++,這裡加乙個引數

d1 +

100 d1.

operator+(

&d1,

100)

;/*date operator+(int day)

}return tmp;

}*/// 使用+=復用去實現+

// d1 + 100

date operator+(

int day)

// d1 += 100

// d1.operator+=(&d1, 100);

date&

operator+=

(int day)

_day +

= day;

while

(_day >

getmonthday

(_year, _month))}

return

*this;}

date operator-(

int day)

date&

operator-=

(int day)

_day -

= day;

while

(_day <=0)

// 注意不是<

_day +

=getmonthday

(_year, _month);}

return

*this;}

// d1 - 100

// date operator-(int day);

// d1 - d2

intoperator-(

const date& d)

void

print()

private

:int _year;

int _month;

int _day;};

void

test1()

void

test2()

intmain()

這就是這篇部落格,可能有點水,hhh.

日期類的簡單實現

日期類的簡單實現 1 對於一些運算子的過載 以下是我們建立乙個日期類及最基本的函式宣告。includeusing namespace std class date date operator const date date date operator date operator int date o...

日期類的簡單實現

1.要考慮到日期的合法性,如果不合法,置成1990.1.1 2.由於在日期類,沒有用到資源的開闢,所以我們可以使用編譯器自動合成的拷貝構造,賦值運算子過載等。3.實現乙個日期加上n天後,日期為多少 4.實現乙個日期減去n天後,日期為多少 5.求兩個日期之間相隔多少天 如下 include using...

C 日期類簡單實現

剛剛開始學c 一般入門都會了解到日期類,對於日期類,我們首先是要了解。不過,如果我們能夠更加的了解它,對於後面我們學習其他類的話,會有乙個很大的幫助。現在在這兒,簡單實現一下日期類的一些介面 include using namespace std class date include date.h ...