实现日期与天数的加减、日期与日期的加减
涉及主要知识:构造函数、析构函数、拷贝构造、运算符重载
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
using namespace std;
class Date
{
public:
Date(int year, int month, int day)//构造函数
{
if (year > 0 && month > 0 && month<13 && day>0 && day <= GetMonthDay(year, month))
{
_year = year;
_month = month;
_day = day;
}
else
{
cout << "error!" << endl;
}
}
~Date()//析构函数
{
}
Date(const Date& d)//拷贝构造函数
{
_year = d._year;
_month = d._month;
_day = d._day;
}
Date& operator=(const Date& d)//赋值运算符重载
{
if (this != &d)
{
_year = d._year;
_month = d._month;
_day = d._day;
}
return *this;
}
//运算符重载== != > >= < <=
bool operator==(const Date& d) const
{
return _year == d._year&&
_month == d._month&&
_day == d._day;
}