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。