定义一个基类BaseClass,有私有整型成员变量Num1,有带参构造函数(内部需输出…在构造…信息)、析构函数(内部需输出…在析造…信息)、输出操作;定义派生类DerivedClass,有整型成员Num2,完成其带参构造函数(内部需输出…在构造…信息)、析构函数(内部需输出…在析造…信息)、输出操作; 输入 输出 3 5 BaseClass在构造... Num1 = 3 BaseClass在构造... DerivedClass在构造... Num2 = 5 DerivedClass在析构... BaseClass在析构... BaseClass在析构...
时间: 2024-02-06 21:02:22 浏览: 69
根据您的要求,我给出一份示例代码如下:
```
#include <iostream>
using namespace std;
class BaseClass {
private:
int Num1;
public:
BaseClass(int num) : Num1(num) {
cout << "BaseClass在构造..." << endl;
}
~BaseClass() {
cout << "BaseClass在析造..." << endl;
}
void display() {
cout << "Num1 = " << Num1 << endl;
}
};
class DerivedClass : public BaseClass {
private:
int Num2;
public:
DerivedClass(int num1, int num2) : BaseClass(num1), Num2(num2) {
cout << "DerivedClass在构造..." << endl;
}
~DerivedClass() {
cout << "DerivedClass在析造..." << endl;
}
void display() {
BaseClass::display();
cout << "Num2 = " << Num2 << endl;
}
};
int main() {
int m,n;
cin >> m >> n;
BaseClass b(m);
b.display();
DerivedClass d(m,n);
d.display();
return 0;
}
```
在这份代码中,`BaseClass` 是基类,`DerivedClass` 是派生类,派生类继承了基类的成员函数和成员变量。基类定义了一个私有整型成员变量 `Num1`,派生类定义了一个整型成员变量 `Num2`。两个类都有带参构造函数和析构函数,并且都有一个输出操作 `display()`。在 `main()` 函数中,首先从标准输入读入了两个整数 `m` 和 `n`,然后分别创建了一个基类对象 `b` 和一个派生类对象 `d`,并调用它们的 `display()` 函数进行输出。
输入为 `3 5` 时,输出结果为:
```
BaseClass在构造...
Num1 = 3
BaseClass在构造...
DerivedClass在构造...
Num1 = 3
Num2 = 5
DerivedClass在析造...
BaseClass在析造...
BaseClass在析造...
```
可以看到,先调用了基类对象的构造函数,再调用派生类对象的构造函数。然后先调用派生类对象的析构函数,再调用基类对象的析构函数。在 `display()` 函数中,派生类对象的输出操作先调用基类对象的输出操作,然后再输出自己的成员变量。
阅读全文