请大神帮忙看看这道问题 实现日期类
设计一个日期类 Date,类的声明如下:class Date{
public:
/* 默认构造函数,以fullyear的形式给出年月日,默认值为1990年1月1日,同时设置
日期分隔符为“-” */
Date(int year = 1990, int month = 1, int day = 1);
/* get、set方法 */
// 设置日期,如果有非法的月或日,将其置为1
void setDate(int year, int month, int day);
void setYear(int year);
int getYear();
void setMonth(int month);
int getMonth();
void setDay(int month);
int getDay();
void printFullYear(); // 以YYYY-MM-DD的形式打印,2011-01-08
void printStandardYear(); // 以YY-MM-DD的形式打印,比如11-01-08
/* 计算函数 */
// 计算当前日期与参数日期之间相差几个整年,仅考虑参数日期比当前日期晚的情况
int fullYearsTo(int year, int month, int day);
/* 计算当前日期与参数日期之间相差多少天(考虑闰年),如果参数日期在当前日期之前,返回负数。 */
int daysTo(int year, int month, int day);
private:
int year;
int month;
int day;
char separator; // 日期分隔符
};
请实现日期类,使得主函数输出如下:
void main(){
Date birthDate(1969, 8, 11);
birthDate.printFullYear(); // 打印:1969-08-11
birthDate.printStandardYear(); // 打印:69-08-11
cout << birthDate.fullYearsTo(2010, 4, 15); // 打印:40,满四十岁
cout << birthDate.daysTo(2010, 4, 15); // 打印14857,活了14857天了
// 打印-7254,共和国比我早诞生了7254天
cout << birthDate.daysTo(1949, 10, 1);
}