. 编写一个程序,实现一个矩形类Rectangle, 它有私有数据int w, int h, 设计一个友元函数area求出矩形的面积。 实现一个类Manage,他是类Rectangle的友元类, 有成员函数getarea求矩形的面积。 在主函数进行测试。
时间: 2023-06-12 12:06:51 浏览: 109
以下是实现矩形类Rectangle和友元类Manage的代码:
```c++
#include <iostream>
using namespace std;
class Rectangle;
int area(Rectangle r);
class Manage {
public:
int getarea(Rectangle r) {
return area(r);
}
};
class Rectangle {
private:
int w, h;
public:
Rectangle(int w, int h) {
this->w = w;
this->h = h;
}
friend int area(Rectangle r);
friend class Manage;
};
int area(Rectangle r) {
return r.w * r.h;
}
int main() {
Rectangle r(3, 4);
Manage m;
cout << "矩形的面积为:" << m.getarea(r) << endl;
return 0;
}
```
程序的运行结果如下:
```
矩形的面积为:12
```
在上面的代码中,矩形类Rectangle有私有数据w和h表示宽和高,有一个友元函数area求出矩形的面积。友元类Manage有一个成员函数getarea求矩形的面积。在主函数中,我们创建了一个矩形对象r,并创建了一个Manage对象m,调用m的getarea函数求出r的面积并输出。
阅读全文