21xrx.com
2025-03-31 09:10:31 Monday
文章检索 我的文章 写文章
用友元函数计算圆柱的面积和体积——C++圆柱类的定义
2023-06-30 21:24:30 深夜i     13     0
友元函数 圆柱类 面积 体积 C++

在C++编程中,圆柱类是一个经常用到的类,因为它可以用来描述很多物体的形状。为了方便计算圆柱的面积和体积,我们可以使用友元函数进行计算。下面是一个圆柱类的定义,其中包含了两个友元函数用于计算圆柱的面积和体积:

#include <iostream>
using namespace std;
class Cylinder {
private:
  double radius;    // 圆柱的半径
  double height;    // 圆柱的高度
public:
  Cylinder(double r, double h)
    radius = r;
    height = h;
  
  friend double area(Cylinder c);   // 友元函数:计算圆柱的表面积
  friend double volume(Cylinder c);  // 友元函数:计算圆柱的体积
};
double area(Cylinder c) {
  double a = 2 * 3.14 * c.radius * (c.radius + c.height);
  return a;
}
double volume(Cylinder c) {
  double v = 3.14 * c.radius * c.radius * c.height;
  return v;
}
int main() {
  Cylinder c(5, 10);   // 创建圆柱对象,半径为5,高度为10
  cout << "圆柱的表面积是:" << area(c) << endl;
  cout << "圆柱的体积是:" << volume(c) << endl;
  return 0;
}

在圆柱类的定义中,首先定义了私有变量radius和height,它们分别表示圆柱的半径和高度。然后定义了一个构造函数,用于初始化这两个私有变量。最后,在类的定义中加入了两个友元函数:area和volume。这两个函数都接收一个圆柱对象作为参数,并返回一个计算好的结果。在主函数中,我们创建了一个圆柱对象c,并用area和volume函数计算它的表面积和体积。

使用友元函数计算圆柱的面积和体积是一种很方便的方法,在实际编程中也经常用到。在其他类的定义中,同样可以使用友元函数来实现某些特殊的功能。

  
  

评论区