定义一个描述日期(年月日)的类Date,由这个类公有单一派生出日期时间类Datetime,主函数完成对类Datetime的测试,即通过Datetime类对象调用成员函数实现测试工作。
时间: 2024-03-18 08:42:28 浏览: 107
js实现的日期操作类DateTime函数代码
以下是Date和Datetime类的实现:
```cpp
#include <iostream>
using namespace std;
class Date {
protected:
int year, month, day;
public:
Date(int y = 1970, int m = 1, int d = 1) : year(y), month(m), day(d) {}
void setDate(int y, int m, int d) {
year = y;
month = m;
day = d;
}
void printDate() const {
cout << year << "-" << month << "-" << day << endl;
}
};
class Datetime : public Date {
private:
int hour, minute, second;
public:
Datetime(int y = 1970, int m = 1, int d = 1, int h = 0, int min = 0, int sec = 0) : Date(y, m, d), hour(h), minute(min), second(sec) {}
void setTime(int h, int min, int sec) {
hour = h;
minute = min;
second = sec;
}
void printTime() const {
cout << hour << ":" << minute << ":" << second << endl;
}
void printDatetime() const {
cout << year << "-" << month << "-" << day << " " << hour << ":" << minute << ":" << second << endl;
}
};
int main() {
Datetime dt(2021, 10, 1, 14, 30, 0);
dt.printDatetime();
dt.setDate(2021, 10, 2);
dt.setTime(9, 0, 0);
dt.printDatetime();
return 0;
}
```
在主函数中,我们创建了一个Datetime类的对象dt,并传入了年月日时分秒的值。然后,我们通过调用printDatetime函数输出该对象的日期时间信息。
接着,我们调用setDate和setTime函数分别修改了对象的日期和时间信息,并再次调用printDatetime函数输出修改后的日期时间信息。
阅读全文