Q. 4
Consider the inheritance hierarchy shown below. Each part of this question is independent.
- (a)In which class(es) would it make most sense to have protected members? Which class(es) would be able to access those protected members directly?
- (b)Which class(es) can access private members of class C directly?
- (c)Suppose class C contains a pure virtual function. Suppose we wish to instantiate objects of this hierarchy. Which class(es) are or could be abstract and which are concrete?
- (d)Consider the following list of classes: Car, SteeringWheel, Vehicle, Van, Minivan, AudioSystem, ParkingLot. Your task is to describe all of the is-a and has-a relationships between these classes. Include an inheritance hierarchy for all classes that fit. Fill in the table with is-a or has-a relationship while leaving the cells empty where no relation is applicable. Vehicle Car Van Mini Van Steering Wheel Audio System Parking Lot Vehicle Car is-a Van is-a Mini Van is-a Steering Wheel Audio System Parking Lot