实现一个名为SimpleCircle的简单圆类,其数据成员int *itsRadius为一个指向其半径值的指针,设计对数据成员的各种操作,给出这个类的完整实现并测试这个类。
时间: 2024-12-20 22:17:08 浏览: 19
在C++中,我们可以创建一个名为`SimpleCircle`的类,它有一个私有变量存储半径,并提供公有方法来设置、获取以及计算面积。以下是完整的类实现:
```cpp
#include <iostream>
class SimpleCircle {
private:
int *itsRadius; // 指向半径的指针
public:
// 构造函数,初始化半径
SimpleCircle(int radius) : itsRadius(new int{radius}) {}
// 获取半径
int getRadius() const {
return *itsRadius;
}
// 设置半径
void setRadius(int newRadius) {
*itsRadius = newRadius;
}
// 计算面积
double calculateArea() const {
return 3.14159 * pow(*itsRadius, 2);
}
// 释放内存(析构函数)
~SimpleCircle() {
delete itsRadius; // 避免内存泄漏
}
};
// 测试类
int main() {
SimpleCircle circle(5); // 创建一个半径为5的圆
// 输出初始半径
std::cout << "Initial radius: " << circle.getRadius() << std::endl;
// 设置新半径并更新面积
circle.setRadius(7);
std::cout << "New radius: " << circle.getRadius() << ", Area: " << circle.calculateArea() << std::endl;
return 0;
}
```
在这个例子中,我们创建了一个简单的圆形类,它包含一个动态分配的内存用于存储半径。构造函数负责初始化,`getRadius`、`setRadius`方法分别用于读取和修改半径,`calculateArea`则计算圆的面积。最后,在`main`函数中我们展示了如何实例化一个`SimpleCircle`对象并进行操作。
阅读全文