Car Rental Management System in C++
The aim of this project is to design and implement acomputerized Car Rental Management System for a company calledCOEN244Cars.
The company rents two types of cars: standard and luxury cars. Acar is identified by a car identification number (int), a type(string), and a flag that indicates whether the car is currentlyavailable or not. The company distinguishes between three types ofcustomers: regular customers, corporate customers, and VIPs (VeryImportant Persons). A customer is identified by a customer number(int), name (string), address (string), and a telephone number(string). A corporate customer has the following additionalattributes: The name (string) and address of the customer’s company(string). Furthermore, the customers have different types ofprivileges. A regular customer can only rent standard cars for amaximum period of 20 days. Corporate customers and VIPs can rentall types of cars. However, corporate customers can rent a car fora maximum period of 35 days, whereas VIPs can rent a car for amaximum period of 45 days. Using your system, the COEN244Carcompany should be able to do the following tasks:
a) Add a new car to the inventory
b) Remove an existing car from the inventory
c) Register new customers
d) Remove a given customer from the customer’s list
e) Rent a car to a customer
f) Return a car and update car information
g) Return the privileges of a particular customer.
h) Change the privileges (e.g., modify the rental period forregular customers to 25).
i) Determine whether a given car is rented or not
j) Determine whether a given customer has rented a car
k) Determine whether a given car is a regular customer,corporate, or VIP.
l) Determine the types of cars rented by a customer of a givencompany.
Question 1
A. Implement the class or classes that represent the carinformation.
B. Implement the class or classes that represent the company’scustomers.
C. Implement the class CarRentalManagement that supports thefunctions (a) to (l)
Notes: Provide all the necessary data members, constructors,copy constructors, destructors, and member functions.
Include the run result.