// forward declaration class BOAT; class CAR; int TOTALWEIGHT(BOAT boat, CAR car);
class BOAT { public: BOAT():WEIGHT(0){} //...... private: int WEIGHT; friend int TOTALWEIGHT(BOAT boat, CAR car); }; class CAR { public: CAR():WEIGHT(0){} //...... private: int WEIGHT; friend int TOTALWEIGHT(BOAT boat, CAR car); }; int TOTALWEIGHT(BOAT boat, CAR car) { return boat.WEIGHT + car.WEIGHT; } 极其简单的语法问题, 闲来无聊就帮你写了