C++ 程序设计实验报告----车辆信息管理系统.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
and()<<" 档位:"<<currentSpeed()<<endl; } }; class Car : public AutoMobile{ //小汽车类 int seats; //座位数public: Car(const char *the_brand, const char *the_number, int num_seats): AutoMobile(the_brand, the_number), seats(num_seats) {} int numberOfSeat()const{ return seats; } //返回座位数 const char *category()const{ return "小轿车"; } void show()const{ AutoMobile::show(); cout<<" 座位数:"<<numberOfSeat()<<endl; } }; class Truck : public AutoMobile{ //卡车类 int max_load; //最大载重量public: Truck(const char *the_brand, const char *the_number, int max_load): AutoMobile(the_brand, the_number), max_load(max_load) {} int maxLoad()const{ return max_load; } //返回最大载重量 const char *category()const{ return "卡车"; } void show()const{ AutoMobile::show(); cout<<" 最大载重量:"<<maxLoad()<<endl; } }; int main() { Car my_car("Toyota", "粤B88888", 5); my_car.show(); Truck my_truck("Ford", "京E99999", 20000); my_truck.show(); return 0; } 在这个车辆信息管理系统中,C++被用来实现一个基础的汽车管理程序,包括汽车类(AutoMobile)、小汽车类(Car)和卡车类(Truck)。这些类的定义体现了面向对象编程的思想,通过类来封装数据和行为,使得代码更加模块化和易于管理。 AutoMobile类作为基础类,包含汽车的品牌(brand)、车牌号(number)和档位(speed)。它提供了获取品牌和车牌号的方法(theBrand和theNumber),获取当前档位的方法(currentSpeed),以及改变档位(changeGearTo)和显示汽车基本信息的方法(show)。同时,AutoMobile类有一个纯虚函数category,用于表示汽车的类别,这表明还有其他类型的汽车可以派生自这个类。 Car类继承自AutoMobile,增加了座位数(seats)的属性,并重写了show方法,增加了显示座位数的功能。同时,Car类的category方法返回"小轿车",表明这是一个小汽车。 Truck类同样继承自AutoMobile,增加了最大载重量(max_load)的属性,并重写了show方法,增加了显示最大载重量的功能。Truck类的category方法返回"卡车",表明这是一个卡车。 在main函数中,创建了一个Car对象my_car和一个Truck对象my_truck,并调用了它们的show方法,分别显示了小汽车和卡车的详细信息。 这个实验的主要目的是让学生掌握C++中的类和继承概念,以及如何利用类来构建面向对象的程序。通过实现车辆信息管理系统,学生可以理解如何定义类的构造函数、析构函数、成员函数,以及如何进行类的派生。此外,实验还强调了封装和抽象,这是面向对象编程的核心原则。通过实际的程序设计,学生能更好地理解和应用这些编程概念。
- 粉丝: 92
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- asm-西电微机原理实验
- Arduino-arduino
- C语言-leetcode题解之70-climbing-stairs.c
- C语言-leetcode题解之68-text-justification.c
- C语言-leetcode题解之66-plus-one.c
- C语言-leetcode题解之64-minimum-path-sum.c
- C语言-leetcode题解之63-unique-paths-ii.c
- C语言-leetcode题解之62-unique-paths.c
- C语言-leetcode题解之61-rotate-list.c
- C语言-leetcode题解之59-spiral-matrix-ii.c