生活中經常用到 , 查詢兩個日期相差多少天 , 多少天之後是哪一天 等等
這些問題都可以用日期類實現
date(int t_year, int t_month, int t_day)
: m_year(t_year), m_month(t_month), m_day(t_day)
}
date(const date
&date)
date &operator=(const date &date)
return *this;
}
完整**
#include
using
namespace
std;
// 日期類
// 四個主要的預設成員函式
// 1. 建構函式
// 2. 析構函式
// 3. 拷貝建構函式
// 4. 賦值操作符過載
class date
}// 2. 析構函式
~date()
// 3. 拷貝建構函式
date(const date &date)
// 4. 賦值操作符過載
date &operator=(const date &date)
return *this;
}// 設定日期
void setdate(int t_year, int t_month, int t_day)
m_year = t_year;
m_month = t_month;
m_day = t_day;
}// 顯示日期
void display()
// 獲得某個月的天數
int getmonthday(const
int &t_year, const
int &t_month)
;if(t_month == 2)
}return days[t_month];
}// 過載 + 運算子
// 2018-7-6 + 100天 = ?
date operator+ (int days)
}return ret;
}date &operator+= (int days)
// 過載 += 運算子
// 2018-7-6 += 100天 = ?
// date operator+= (int days)
// // 過載 + - > < == != >= <= & 運算子
// date operator+(int day);
bool
operator!= (const date &d)
// 日期 - 天數
date operator-(int day)
ret.m_day += getmonthday(ret.m_year, ret.m_month);
}return ret;
}// 日期 - 日期
intoperator-(const date &d)
return count;
}date operator++(int)
bool
operator>(const date &x)
}return
false;
}bool
operator
< (const date &d)
bool
operator==(const date &x)
bool
operator>=(const date &x)
bool
operator
<=(const date &x)
date *operator& (const date &x)
private:
int m_year;
int m_month;
int m_day;
};
測試**
#include
"date.h"
void testdate_01()
void testdate_02()
else
}void testdate_03()
int main()
C 類的實現 Date類
主要是有每月的天數問題 另外過載 days時注意不能越界 出現13月時下一年一月 過載比較時只需要實現乙個 其他的直接呼叫這個就可以了 寫到最後發現基本都是直接呼叫之前寫的東西,還是挺好寫的。include using namespace std class date date const date...
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...