![]() |
![]() |
![]() |
![]() |
![]() |
|
You could, of course, define a display_capacity member function as
follows, in the box_car class, relying on values for the
height, width, and length member variables inherited
from the box class:
virtual void display_capacity ( ) {cout << height * width * length;}
The blatant defect of this approach is that you already have a perfectly
good function for computing box volumes defined as a box class
member function. You should make use of that function, rather than
duplicating its innards.
box <-- Volume function railroad_car <-- Virtual display_capacity ^ defined here ^ function announces | | presence of virtual | *------------------------* functions lower in the | | hierarchy | | box_car <-- Virtual display_capacity function computes volume