#include<iostream>
using namespace std;
class CTimeType
{
int hour,minute,second;
public:
CTimeType(int h=2,int m=0,int s=0)
{
hour=h;
minute=m;
second=s;
}
void display()
{
cout<<hour<<":"<<minute<<":"<<second<<endl;
}
void SetTime(int h,int m,int s)
{
hour=h;
minute=m;
second=s;
}
};
class CDateType
{
int month,day,year;
public:
CDateType(int mon=1,int d=1,int y=2008)
{
month=mon;
day=d;
year=y;
}
CDateTimeType(int mon=1,int d=1,int y=2000,int h=0,int m=0,int s=0):CDateType(mon,d,y),CTimeType(h,m,s)
{
}
void display()
{
cout<<month<<"/"<<day<<"/"<<year<<endl;
}
void SetDate(int mon,int d,int y)
{
month=mon;
day=d;
year=y;
}
};
class CDateTimeType:public CDateType,public CTimeType
{
public:
CDateTimeType(int mon=1,int d=1,int y=2000,int h=0,int m=0,int s=0)
{
cout<<h<<endl;
cout<<m<<endl;
cout<<s<<endl;
CDateType(mon,d,y);
CTimeType(h,m,s);
}
void display()
{
CDateType::display();
CTimeType::display();
}
};
int main()
{
cout<<"类的多重继承演示"<<endl;
CDateTimeType dt(1,1,2008,11,13,12);
cout<<"调用CDateTimeType类构造函数设定的初始日期,时间为:"<<endl;
dt.display();
dt.SetDate(8,8,2008);
dt.SetTime(20,8,8);
cout<<"调用基类成员函数修改后的时间,日期为:"<<endl;
dt.display();
return 0;
}