用友元函数计算圆柱体的体积
时间: 2024-10-08 16:15:52 浏览: 25
C++课程设计:几何体的表面积与体积
在C++中,友元函数是一种特殊类型的成员函数,它能够访问并操作类的私有数据。为了计算圆柱体的体积,我们可以创建一个包含圆柱体信息的类,比如`Cylinder`,然后声明一个友元函数`friend`来计算体积。这里是一个简单的例子:
```cpp
class Cylinder {
private:
double radius; // 半径
double height; // 高度
public:
// 构造函数等...
Cylinder(double r, double h) : radius(r), height(h) {}
// 计算体积的友元函数
friend double calculate_volume(Cylinder& cylinder);
};
// 友元函数实现
double calculate_volume(Cylinder& cylinder) {
return M_PI * cylinder.radius * cylinder.height;
}
int main() {
Cylinder cylinder(5.0, 8.0); // 创建一个圆柱体实例
double volume = calculate_volume(cylinder);
std::cout << "圆柱体的体积是: " << volume << std::endl;
return 0;
}
```
在这个例子中,`calculate_volume`函数作为`Cylinder`类的友元,可以直接访问其半径和高度来计算体积,并返回结果。在`main`函数中,我们通过`cylinder`对象调用这个友元函数。
阅读全文