C++练习--创建Boat类和Car类(含友元)

/*
定义Boat与Car两个类,二者都有weight属性,
定义二者的一个友元函数totalWeight()为外部函数,
计算二者的重量和。
*/
#include<iostream>
#include<string>
using namespace std;
class Boat;
class Car {
private:
    double weight;
public:
    Car(double wg) {
        this->weight = wg;
    }
    Car(Car &tp) {
        this->weight = tp.weight;
    }
    double getWeight() {
        return weight;
    }
    ~Car() {

    }
    void show() {
        cout << "This is a Car:" << endl;
        cout << "Weight:" << weight << endl;
    }
};
class Boat {
private:
    double  weight;
public:
    Boat(double wg) {
        this->weight = wg;
    }
    Boat(Boat &tp) {
        this->weight = tp.weight;
    }
    double getWeight() {
        return weight;
    }
    ~Boat()
    {

    }
    friend double totalWeight(Boat &a, Car &b);
    void show() {
        cout << "This is a Boat:" << endl;
        cout << "Weight:" << weight << endl;
    }
};
double totalWeight(Boat &a, Car &b) {
    return a.getWeight() + b.getWeight();
}
int main() {
    Boat a(1024.0);
    Car b(1024.0);
    a.show();
    b.show();
    cout << "The total weight of the Car and the Boat:" << endl;
    cout << totalWeight(a, b);
    return 0;
}
  • 测试截图
原文地址:https://www.cnblogs.com/FlyerBird/p/8995963.html