已有类Time和Date,要求设计一个派生类Birthtime,它继承类Time和Date,并且增加一个数据成员Childname用于表示小孩的名字,同时设计主程序显示一个小孩的出生时间和名字。
时间: 2024-03-12 19:46:25 浏览: 21
好的,根据您的需求,我为您设计了以下代码:
```C++
#include <iostream>
using namespace std;
// 定义类Date
class Date {
public:
Date(int year, int month, int day) {
this->year = year;
this->month = month;
this->day = day;
}
string toString() {
return to_string(year) + "-" + to_string(month) + "-" + to_string(day);
}
private:
int year;
int month;
int day;
};
// 定义类Time
class Time {
public:
Time(int hour, int minute, int second) {
this->hour = hour;
this->minute = minute;
this->second = second;
}
string toString() {
return to_string(hour) + ":" + to_string(minute) + ":" + to_string(second);
}
private:
int hour;
int minute;
int second;
};
// 定义派生类Birthtime
class Birthtime : public Date, public Time {
public:
Birthtime(int year, int month, int day, int hour, int minute, int second, string childname)
: Date(year, month, day), Time(hour, minute, second) {
this->childname = childname;
}
string toString() {
return childname + "的出生时间为:" + Date::toString() + " " + Time::toString();
}
private:
string childname;
};
// 主程序
int main() {
Birthtime birthtime(2021, 10, 1, 10, 30, 0, "小明");
cout << birthtime.toString() << endl;
return 0;
}
```
运行结果为:
```
小明的出生时间为:2021-10-1 10:30:0
```
注意,这里我使用了 C++ 语言,您可以根据需要进行调整。同时,这里的代码只是一个简单的示例,您可以根据实际需求进行修改和扩展。