實現日期類的一些功能:
操作符過載
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); //<=
date operator+(int days); // 加天數
date& operator+=(int days);// +=
date operator-(int days); //減天數
int operator-(const date& d); // 兩個日期相隔天數
date& operator-=(int days); //-=
date& operator++( ); //前置++
date operator++(int); //後置++
date& operator–( ); //前置–
date operator–(int); //後置 –
bool isleapyear(int year);//判斷閏年?
int getmonthdays( ); //乙個月有多少天 ?
#include
#include
using
namespace
std;
class date
else
} //date(const date& d)//拷貝建構函式
////不用寫,系統會自動生成
//~date()//析構函式
//void print() const
else
if(_year == d._year)
else
if(_month == d._month)}}
return
false;
}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)
//d1 + 100
date operator+(int day)
//如果day為負數,則呼叫減法操作符函式
date tmp(*this);
tmp._day += day;
while(tmp._day > getmonthdays())
}return tmp;
}date operator+=(int day)
//day-10
date operator-(int day)
date tmp(*this);
tmp._day = day;
while(tmp._day <= 0)
else
tmp._day += getmonthdays();
}return tmp;
}date operator-=(int day)
date operator++()//前置++
}return *this;*/
//++也相當於加一天 復用->可維護性
*this += 1;
return *this;
}date operator++(int)//後置++ int用來區分前置和後置
date operator--() //前置--
date operator--(int)//後置--
intoperator-(const date& d)//兩個日期相隔天數
int days = 0;
while (max > min)
return days*flag;
}bool isleapyear(int year)//判斷是不是閏年
else
return
false;
}int getmonthdays()
; int flag = isleapyear(_year);
/*if(_month = 2 && (((_year%4 == 0)&&(_year%100 != 0)) || (_year%400 == 0)))*/
if(_month = 2 && flag == 1)
return monthdays[_month];
}private:
int _year;
int _month;
int _day;
};void test1()
date日期類實現 C
include include includeusing namespace std class date 拷貝構造 date const date d 賦值運算子過載 date operator const date d return this 運算子過載 date operator int da...
Date類,實現日期類
1 概述 類 date 表示特定的瞬間,精確到毫秒。2 構造方法 public date public date long date 把乙個long型別的毫秒值轉換成乙個日期物件 3 成員方法 public long gettime 獲取乙個日期物件物件毫秒值 public void settime...
運算子過載練習完成日期類
include using namespace std 1.要考慮到日期的合法性 2.考考慮閏年和非閏年 3.需要用到其他輔助函式自己可以新增 class date cout date int,int,int endl date const date d year d.year month d.mo...