利用C++编程,声明Book与Ruler两个类,二者都有weight属性,定义二者的一个友元函数totalWeight(),计算二者的重量和
时间: 2023-06-14 12:02:31 浏览: 74
以下是C语言实现的代码:
```c
#include <stdio.h>
// 声明Book类
typedef struct Book {
float weight;
} Book;
// 声明Ruler类
typedef struct Ruler {
float weight;
} Ruler;
// 声明totalWeight()函数为Book和Ruler的友元函数
float totalWeight(Book *book, Ruler *ruler) {
return book->weight + ruler->weight;
}
int main() {
Book book;
book.weight = 0.5;
Ruler ruler;
ruler.weight = 0.1;
float total = totalWeight(&book, &ruler);
printf("The total weight is: %.2f\n", total);
return 0;
}
```
以上代码中,我们使用了 `typedef` 来定义了 `Book` 和 `Ruler` 两个类。然后在 `totalWeight()` 函数中,我们将 `Book` 和 `Ruler` 类型的指针作为参数传入,计算二者的重量和并返回。
在 `main()` 函数中,我们创建了一个 `Book` 类型的对象 `book` 和一个 `Ruler` 类型的对象 `ruler`,并设置了它们的重量。然后我们调用 `totalWeight()` 函数,将 `book` 和 `ruler` 对象的指针传入,计算二者的总重量并输出。
相关推荐
![text/x-c++](https://img-home.csdnimg.cn/images/20210720083646.png)
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)