题目描述
定义描述圆的类Circle, 其数据成员为圆心坐标(X,Y)与半径R。再定义一个描述圆柱体的类Cylinder, 其私有数据成员为圆柱体的高H。
定义计算圆柱体体积的成员函数Volume(), 并将Volume()定义为圆类Circle的友元函数,该函数使用圆类对象的半径R来计算圆柱体的体积。
在主函数中定义圆的对象ci, 圆心坐标为(12,15), 半径为10。再定义圆柱体对象cy, 其底面半径与圆半径相同, 高为10。调用Volume()函数计算圆柱体的体积,并显示体积值。
程序前两行必须是:
#include <iostream>
using namespace std;
实现代码
#include <iostream>
using namespace std;
class Circle; // 前向声明
class Cylinder {
private:
double H; // 圆柱体的高
public:
Cylinder(double h) : H(h) {}
friend double Volume(const Circle& c, const Cylinder& cy);
};
class Circle {
private:
double X; // 圆心横坐标
double Y; // 圆心纵坐标
double R; // 圆半径
public:
Circle(double x, double y, double r) : X(x), Y(y), R(r) {}
friend double Volume(const Circle& c, const Cylinder& cy);
};
double Volume(const Circle& c, const Cylinder& cy) {
return 3.14159 * c.R * c.R * cy.H; // 计算圆柱体的体积
}
int main() {
Circle ci(12, 15, 10); // 创建圆对象
Cylinder cy(10); // 创建圆柱体对象
double volume = Volume(ci, cy); // 调用Volume()函数计算体积
cout << "圆柱体的体积为:" << volume << endl;
return 0;
}
以上是一个定义了圆类 Circle
和圆柱体类 Cylinder
的程序。Cylinder
类私有数据成员为圆柱体的高 H
,并定义了计算圆柱体体积的成员函数 Volume()
。Circle
类私有数据成员为圆心坐标 (X, Y)
与半径 R
,并将 Volume()
定义为圆类 Circle
的友元函数,该函数使用圆类对象的半径 R
来计算圆柱体的体积。
在 main()
函数中,首先创建了一个圆对象 ci
,圆心坐标为 (12, 15),半径为 10。然后创建了一个圆柱体对象 cy
,底面半径与圆半径相同,高为 10。最后调用 Volume()
函数计算圆柱体的体积,并显示体积值。
运行结果
© 版权声明
本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!
THE END