题目描述
【问题描述】声明boat与car两个类,两者都有weight属性,定义二者的一个友元函数totalweight(),计算二者的重量和。类的信息按需要自行定义。
【输入形式】在主程序中输入一个boat对象以及一个car对象的重量
【输出形式】输出两个对象的重量和
【样例输入1】4 5
【样例输出1】9
【样例输入2】5.5 5.5
【样例输出2】11
解题思路
这里主要考察多个类的同时操作即友元函数的使用方法,注意要提前声明其中一个类。
源代码
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
class car; //提前说明car为类
class boat {
float weight;
public:
boat(float w) {
weight = w;
}
friend float totalweight(boat &b, car &c);
};
class car {
float weight;
public:
car(float w) {
weight = w;
}
friend float totalweight(boat &b, car &c);
};
float totalweight(boat &b, car &c) {
return b.weight + c.weight;
}
int main() {
float boatweight, carweight;
cin >> boatweight >> carweight;
boat b(boatweight);
car c(carweight);
cout << totalweight(b, c);
return 0;
}
总结
友元函数使用