请编写一个基于对象的程序,设计一个日期时间类:数据成员包括年、月、日和时、分、秒(数据成员私有);成员函数包括设置日期时间(数据要合理)和输出时间;并在main函数中,定义一个该类对象,友好输出。
时间: 2023-05-31 17:04:34 浏览: 76
以下是一个可能的实现:
```
#include <iostream>
using namespace std;
class DateTime {
private:
int year, month, day, hour, minute, second;
public:
DateTime() {} // 默认构造函数,不做任何初始化
void setDateTime(int y, int m, int d, int h, int mi, int s) {
// 检查数据合法性
if (y < 0) y = 0;
if (m < 1) m = 1;
if (m > 12) m = 12;
if (d < 1) d = 1;
if (d > 31) d = 31;
if (h < 0) h = 0;
if (h > 23) h = 23;
if (mi < 0) mi = 0;
if (mi > 59) mi = 59;
if (s < 0) s = 0;
if (s > 59) s = 59;
year = y;
month = m;
day = d;
hour = h;
minute = mi;
second = s;
}
void printDateTime() {
cout << year << "-" << month << "-" << day << " " << hour << ":" << minute << ":" << second << endl;
}
};
int main() {
DateTime dt;
dt.setDateTime(2021, 4, 26, 12, 34, 56);
dt.printDateTime();
return 0;
}
```
这个程序定义了一个DateTime类,其中私有数据成员包括年、月、日和时、分、秒。公有成员函数包括设置日期时间和输出时间。在main函数中,定义了一个DateTime对象,设置日期时间为2021年4月26日12点34分56秒,然后输出。输出结果为:
```
2021-4-26 12:34:56
```