- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
14朱晓杰单的车位管理
课程设计报告
课程: 面向对象程序设计
学号:
姓名: 朱晓杰
班级: 10计31班
教师: 张文斌
徐州师范大学
计算机科学与技术学院
课程设计名称:简单的车位管理
1.设计内容:
随着家庭购买汽车的增加,停车场车位紧张的问题越来越突出。请根据题目要求完成简单的车位管理程序。
1.1.停车场有若干停车位(为说明问题,假定为3个),每个位置可以存放不同种类的的汽车,包括卡车Truck,客车Carriage和小轿车Car,但同一时刻一个位置只能存放0或1辆汽车。
1.2.管理系统模拟实际车辆停车的情况:新来车辆时如果有空位,按顺序为该车分配停车位;车辆开走时,交纳相应停车费;统计各类车辆的数量。
1.3.定义描述停车场的类Park,其中有3个位置用于存放各类车辆。
1.4.定义基类Automobile,至少包括纯虚函数Pay用于显示车辆信息并交纳相应停车费。
1.5.定义派生类Truck,Carriage和Car,这些车辆除了拥有车牌号(字符串)、车辆已使用年数(整数)之外,Truck还拥有载重量(浮点数,单位吨)属性,Carriage还拥有乘坐人数(整数,单位人)属性,Car还拥有排气量(浮点数,单位L)属性。具体实现上述纯虚函数Pay,显示每类车辆的相应信息,并给出计价提示,其中Truck收费2元/小时,Carriage收费1.5元/小时,Car收费1元/小时。
1.6.重载输入“”操作符,使得可以通过cin直接读入每类车辆的相应信息。
1.7.编写main函数,测试上述所要求的各种功能,即根据菜单命令为新来车辆分配停车位、开走车辆(输入车位编号)时付费、显示停车场中各类车辆的数量。
2.设计目的与要求:
2.1设计目的:
达到熟练掌握C++语言的基本知识和技能; 基本掌握面向对象程序设计的基本思路和方法;
能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。要求利用面向对象的方法以及C++的编程思想来完成系统的设计; 要求在设计的过程中,建立清晰的类层次;
在系统的设计中,至少要用到面向对象的一种机制。.1主要知识点
运算符重载增加了C++语言的可扩充性。运算符的重载实际上就是一种函数调用的形式,可以用成员函数重载运算符,就是将运算符重载定义为一个类的成员函数的形式;也可以用友元函数重载。用友元重载运算符的友元函数是独立于类以外的一般函数。
友元函数的运用使不同类之间有了共享机制,方便程序的编辑。
运用析构函数完成撤销对象占用内存之前的清理工作。
3.2关键技术
共设计了5个类。虚基类Automobile,派生类Truck,Carriage和Car及类Park。具体定义如下所示:
(1)基类Automobile
类Automobile中,成员变量*Number表示车牌,year表示车已使用年数,time表示停车时间。纯虚成员函数pay()表示取车时应付的费用,另有一个纯虚函数quche()。
(2)类Truck
类Truck中,成员变量zzl表示载重量,trucksum表示目前这一时刻停车场内的卡车数量,truckcount表示到目前为止停过的卡车数量总和。成员函数pay()表示取车时所付的费用,quche()用来表示取车后停车场内的卡车数,number()用来返回目前停车场内的卡车数,count()用来返回停车场内一共停过的卡车数,用友元函数重载运算符,以及构造函数Truck()和析构函数~Truck()。
(3)类Carriage
类carriage中,成员变量chairs表示乘坐人数,carriagesum表示目前这一时刻停车场内的客车数量,carriagecount表示到目前为止停过的客车数量总和。成员函数pay()表示取车时所付的费用,quche()用来表示取车后停车场内的客车数,number()用来返回目前停车场内的客车数,count()用来返回停车场内一共停过的客车数,用友元函数重载运算符,以及构造函数Carriage()和析构函数~Carriage()。
(4)类Car
类car中,成员变量air表示排气量,carsum表示目前这一时刻停车场内的小轿车数量,carcount表示到目前为止停过的小轿车数量总和。成员函数pay()表示取车时所付的费用,quche()用来表示取车后停车场内的小轿车数,number()用来返回目前停车场内的小轿车数,count()用来返回停车场内一共停过的小轿车数,用友元函数重载运算符,以及构造函数Car()和析构函数~Car()。
(5)类Park
类park
原创力文档


文档评论(0)