3.A 类、函数模板的综合运用
1)编写一个Date类,包括整型的年月日三个数据成员,以及对应的get、set函数、构造函数、sub函数、isWeekend函数。要求检查年月日的合法性,包括闰年和特殊日期检查。提供一个sub(Date d)成员函数,用于计算当前日期对象和参数d之间的日期差值(用天数计算)。
2)编写一个Time类,包括整型的时分秒三个数据成员,以及对应的get、set函数和构造函数,要求时分秒为合法的正整数。提供一个sub(Time t)成员函数,用于计算当前Time对象和参数对象t之间的时间差值(用秒数计算)。
3)编写一个模板函数 bool compare(T t1, T t2),判断两个参数的大小,使之能够处理Time类或者Date类的对象。
4)编写一个main函数,测试上述模板函数和自定义class。
#include<iostream>
using namespace std;
class Date//日期类
{
private:
int year,month,day;
public:
Date()
{
year=2016;
month=5,day=4;
}
Date(int y,int m,int d)
{
year=y;
month=m;
day=d;
}
Date(Date& d)
{
year=d.year;
month=d.month;
day=d.day;
}
~Date() {}
int Gety()
{
return year; //得到年份
}
int Getm()
{
return month;
}
int Getd()
{
return day;
}
void Set(int y,int m,int d)
{
year=y; //设置时间
month=m;
day=d;
}
void Show()
{
cout<<year<<"-"<<month<<"-"<<day<<endl; //显示日期y-m-d的函数
}
};
3 4在你点了采纳后继续完成