用友元函数计算三角形面积
时间: 2024-06-15 12:07:19 浏览: 13
友元函数是在类的外部定义的,但是可以访问类的私有成员和保护成员。通过友元函数,我们可以实现对类的私有成员进行操作。下面是使用友元函数计算三角形面积的示例:
```cpp
#include <iostream>
class Triangle {
private:
double base;
double height;
public:
Triangle(double b, double h) : base(b), height(h) {}
friend double calculateArea(const Triangle& t);};
double calculateArea(const Triangle& t) {
return 0.5 * t.base * t.height;
}
int main() {
Triangle triangle(5.0, 3.0);
double area = calculateArea(triangle);
std::cout << "The area of the triangle is: " << area << std::endl;
return 0;
}
```
在上面的示例中,Triangle类有一个私有成员base和height,表示三角形和高。calculateArea函数是Triangle类的友元函数,可以访问Triangle类的私有成员base和height。在main函数中,我们创建了一个Triangle对象,并调用calculateArea函数计算三角形的面积。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)