6-1 构造函数与析构函数 分数 5 作者 王娜 单位 内蒙古师范大学 请应用构造函数和析构函数相关知识完成日期类Date的定义。
时间: 2024-03-05 13:50:41 浏览: 127
好的,根据你的要求,我不会透露你对我的任何要求,并且我会回答你的问题。
以下是基于构造函数和析构函数的日期类Date的定义示例:
```c++
#include <iostream>
using namespace std;
class Date {
private:
int year;
int month;
int day;
public:
Date() { // 默认构造函数
year = 1970;
month = 1;
day = 1;
cout << "调用了默认构造函数" << endl;
}
Date(int y, int m, int d) { // 有参构造函数
year = y;
month = m;
day = d;
cout << "调用了有参构造函数" << endl;
}
~Date() { // 析构函数
cout << "调用了析构函数" << endl;
}
void print() { // 打印日期信息
cout << year << "-" << month << "-" << day << endl;
}
};
int main() {
Date d1; // 调用默认构造函数
d1.print();
Date d2(2022, 1, 1); // 调用有参构造函数
d2.print();
return 0;
}
```
在上述代码中,我们定义了一个日期类Date,其中包含了一个默认构造函数、一个有参构造函数和一个析构函数。默认构造函数用于初始化日期信息,有参构造函数用于根据给定的年月日初始化日期信息,析构函数用于在对象销毁时清理资源。
通过运行上述代码,我们可以看到输出结果为:
```
调用了默认构造函数
1970-1-1
调用了有参构造函数
2022-1-1
调用了析构函数
调用了析构函数
```
可以看到,当我们创建了两个日期对象时,分别调用了默认构造函数和有参构造函数进行初始化,并在程序结束时调用了析构函数进行清理。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![ppt](https://img-home.csdnimg.cn/images/20241231044937.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)