4. 设计一个建筑物类 要求: (1)具有编号、层数、总面积等属性; (2)具有无参构造函数 、有参构造函数和拷贝构造函数、析构函数; (3) 具有函数输出对象的成员数值。
时间: 2024-03-25 07:38:56 浏览: 81
下面是一个简单的建筑物类的C++代码实现:
```c++
#include <iostream>
using namespace std;
class Building {
private:
int number; // 建筑物编号
int floors; // 建筑物层数
double area; // 建筑物总面积
public:
// 无参构造函数
Building() {
number = 0;
floors = 0;
area = 0.0;
}
// 有参构造函数
Building(int n, int f, double a) {
number = n;
floors = f;
area = a;
}
// 拷贝构造函数
Building(const Building& other) {
number = other.number;
floors = other.floors;
area = other.area;
}
// 析构函数
~Building() {}
// 输出对象的成员数值
void print() {
cout << "Building Number: " << number << endl;
cout << "Building Floors: " << floors << endl;
cout << "Building Area: " << area << endl;
}
};
int main() {
// 测试建筑物类
Building b1; // 使用无参构造函数创建对象
Building b2(1001, 20, 1000.0); // 使用有参构造函数创建对象
Building b3 = b2; // 使用拷贝构造函数创建对象
// 输出对象成员数值
b1.print();
b2.print();
b3.print();
return 0;
}
```
以上代码定义了一个名为Building的类,包括编号、层数、总面积等属性,并实现了无参构造函数、有参构造函数、拷贝构造函数和析构函数。同时,还定义了一个print函数,用于输出对象的成员数值。在main函数中,我们测试了该类的各种构造函数和成员函数。
阅读全文