本项目为一个基于C++语言开发的简易车位管理系统,旨在通过编程实现车位信息管理、车辆进出记录及空闲车位查询等功能。
随着家庭购买汽车数量的增加,停车场车位紧张的问题日益显著。请根据以下要求编写一个简单的车位管理系统。
1. 停车场设有若干停车位(为了简化问题,设定为3个),每个位置可以停放不同类型的车辆,包括卡车Truck、客车Carriage和小轿车Car;但同一时间一个位置只能存放0或一辆汽车。
2. 管理系统模拟实际中车辆的停车情况:当有新来车辆时,并且如果存在空位,则按顺序为该车分配停车位。若车辆离开停车场,需支付相应的停车费用;同时统计各类停放中的车辆数量。
3. 定义描述停车场状况的类Park,其中包含用于存放各种类型汽车的空间(共三个)。
4. 创建一个基类Automobile,并至少包括一个纯虚函数Pay来展示车辆信息并计算停车费。
5. 设立派生类Truck、Carriage和Car。这些类型的车除了车牌号(字符串)、已使用年数(整数)外,卡车还具有载重量(浮点型数值,单位为吨),客车则有乘坐人数属性(整数类型,以人计算)。小轿车还有排气量的属性(浮点型数值,单位升L)。每一个派生类都需要具体实现上述纯虚函数Pay,并显示每种类型的车辆信息并给出计价提示。其中卡车收费2元/小时、客车1.5元/小时和小汽车1元/小时。
6. 重载输入操作符“>>”,使得可以通过cin直接读入各类车辆的详细资料。
7. 编写main函数以测试上述要求的功能,即根据菜单指令为新到达的车辆分配停车位;当有车离开停车场时(通过车位编号),支付停车费,并显示当前在场的所有类型汽车的数量。