C 實現乙個Date類

2021-09-11 17:56:24 字數 2900 閱讀 2699

關於日期類,我們最基本的成員變數就是三個:年、月、日。關於成員函式我們要實現構造,拷貝構造,賦值,關於日期的比較大小,以及日期加天數,日期減天數,以及+=和- =,同時還要考慮能否復用,日期減日期,還有日期類的++和- -(分為前置和後置)等。

具體**如下:詳情請看**注釋

date.h

#pragma once

#include

class date

;

date.cpp
#include

"date.h"

//列印

void date:

:print()

const

//獲取月的天數

int date:

:getmonthday

(int year,

int month)

const

;//是閏年的話2月返回29天if(

(month ==2)

&&((year %4==

0&& year %

100!=0)

||(year %

400==0)

))return array[month];}

//建構函式

date:

:date

(int year,

int month,

int day)

else

}//析構函式

date::~

date()

//拷貝構造date d2(d1);

date:

:date

(const date& d)

//賦值運算子過載

date& date:

:operator=

(const date& d)

return

*this;

//可以支援連續賦值

}//判斷日期大小或相等

bool date:

:operator==

(const date&d)

const

bool date:

:operator!=

(const date&d)

const

bool date:

:operator>

(const date&d)

const

bool date:

:operator<

(const date&d)

const

bool date:

:operator>=

(const date&d)

const

bool date:

:operator<=

(const date&d)

const

//關於日期的加減

d1+100----d1不發生改變

不復用實現+

//date date::operator+(int day)const

//// }

// return ret;

//}//復用+=實現+

date date:

:operator+

(int day)

const

d1-100----d1不發生改變

不復用實現-

//date date::operator-(int day)const

//// ret._day += getmonthday(ret._year, ret._month);

// }

// return ret;

//}//復用-=實現-

date date:

:operator-

(int day)

const

//實現+=

date& date:

:operator+=(

int day)

_day +

= day;

while

(_day >

getmonthday

(_year, _month))}

return

*this;

}//實現-=

date& date:

:operator-=(

int day)

_day -

= day;

while

(_day <=0)

_day +

=getmonthday

(_year, _month);}

return

*this;

}//d1-d2

int date:

:operator-

(date& d)

const

//日期減日期,返回值是天數int

int num =0;

while

(max != min)

return num;

}//前置++(d.operator++(&d))

date& date:

:operator++()

//後置++(d.operator++(&d,0))

date date:

:operator++

(int

)//前置--(d.operator--(&d))

date& date:

:operator--()

//後置--(d.operator--(&d,0))

date date:

:operator--

(int

)

main.cpp
#include

"date.h"

intmain()

Java實現乙個Date類

日期類 根據需求列出功能列表 1.傳 年 月 日 構造日期類 2.在當前日期上增加多少天 3.在當前日期上減少多少天 4.可以返回字串 string 的方法 2019 5 30 5.加一些限制 年支援的範圍 1900,2100 6.如果給定兩個日期,計算兩個日期之間相差多少天 設計屬性 1.年 月 ...

建立乙個Date類

標頭檔案 1 data class.h ifndef i date ed define i date ed include include using namespace std year應當是1800到2200之間的整數 month必須是1到12之間的整數 day必須是1到給定 月的天數之間的整數...

C 自定義乙個Date類

學習了c 的一些類的預設成員函式,運算子過載等內容後,自已定義並實現了乙個較為完整的date類 test.cpp class date void showdate date 析構函式 date const date d 拷貝建構函式 date operator const date d 賦值運算子過...