编写一个C++程序。编写一个表示圆形的类 Circle。用一个私有成员表示 圆的半径;使用静态常成员变量表示圆周率PI ;编写常成员函数返回圆的面积; 使用静态成员变量统计 Circle类的对象数目;编写成员函数,返回 Circle的对象数目;编写复制构造函数。
时间: 2024-12-15 15:19:26 浏览: 28
在C++中,我们可以按照以下步骤创建一个表示圆形的Circle类:
```cpp
#include <iostream>
#include <cmath> // 引入math库,用于计算圆周率π
class Circle {
private:
double radius; // 私有成员变量,表示圆的半径
static const double PI = 3.14159; // 静态常量,表示圆周率
static int object_count; // 静态成员变量,用于统计对象数
public:
// 构造函数,初始化圆的半径
Circle(double r) : radius(r) {
++object_count;
}
// 常成员函数,计算并返回圆的面积
double getArea() const {
return PI * std::pow(radius, 2);
}
// 成员函数,返回Circle类的对象数目
static int getObjectCount() {
return object_count;
}
// 复制构造函数,将已有Circle对象的内容复制给新对象
Circle(const Circle& other) : radius(other.radius) {
++object_count;
}
// 打印信息,演示如何实例化和使用对象
void printInfo() const {
std::cout << "Radius: " << radius << ", Area: " << getArea() << ", Object Count: " << getObjectCount() << std::endl;
}
};
// 初始化静态成员变量
int Circle::object_count = 0;
int main() {
Circle circle1(5), circle2(circle1); // 创建两个Circle对象,第二个通过复制构造函数
circle1.printInfo();
circle2.printInfo();
return 0;
}
```
这个程序定义了一个Circle类,包含私有成员、构造函数、获取面积的方法、对象计数的静态成员以及复制构造函数。`main`函数展示了如何使用这个类。
阅读全文