1、编写一个程序。有一个汽车类vehicle,它具有一个需传递参数的构造函数,汽车类vehicle中的数据成员为:车轮个数wheels和车重weight放在保护段中,汽车类vehicle中的公有成员函数为:get_wheels()(返回车轮个数的值)、get_weight()(返回车重的值)、wheel_load()(返回每个轮胎的载重量的值:weight/wheels)、print()(输出车轮的个数和车重的公斤数);小车类car是vehicle类的私有派生类,它具有一个需传递参数的构造函数,小车类car中的私有数据成员为:车载人数passenger_load,小车类car中的公有成员函数为:get_passengers()(返回车载人数的值)、print()(输出小车车轮的个数和车重的公斤数以及车载人数的个数);卡车类truck是vehicle类的私有派生类,它具有一个需传递参数的构造函数,卡车类truck中的私有数据成员为:载人数passenger_load和载重量payload,卡车类truck中的公有成员函数为:get_passengers()(返回车载人数的值)、efficiency()(返回卡车的载重效率的值:payload/(payload+weight)、print()(输出卡车车轮的个数和车重的公斤数以及车载人数的个数和卡车的载重效率的值))。
程序的主函数如下:
int main() {
car car1(4, 1000,5);
truck tru1(10, 5000, 3, 340000);
car1.print();
tru1.print();
return 0;
}
本程序的执行结果如下:
小车:
车轮:4个
重量:1000公斤
载人:5人
卡车:
车轮:10个
重量:5000公斤
载人:3人
效率:0.985507