home *** CD-ROM | disk | FTP | other *** search
/ World of Shareware - Software Farm 2 / wosw_2.zip / wosw_2 / CPROG / CPTUTOR2.ZIP / ANSWERS.ARC / CH10_2.CPP < prev    next >
C/C++ Source or Header  |  1990-07-20  |  1KB  |  65 lines

  1.                              // Chapter 9 - Programming exercise 2
  2. #include "iostream.h"
  3.  
  4. class vehicle {
  5.    int wheels;
  6.    float weight;
  7. public:
  8.    virtual void message(void) { cout << "Vehicle message\n";}
  9. };
  10.  
  11.  
  12. class car : public vehicle {
  13.    int passenger_load;
  14. public:
  15.    void message(void) { cout << "Car message\n";}
  16. };
  17.  
  18.  
  19. class truck : public vehicle {
  20.    int passenger_load;
  21.    float payload;
  22. public:
  23.    void message(void) { cout << "Truck message\n";}
  24.    int passengers(void) {return passenger_load;}
  25. };
  26.  
  27.  
  28. class boat : public vehicle {
  29.    int passenger_load;
  30. public:
  31.    int passengers(void) {return passenger_load;}
  32.    void message(void) { cout << "Boat message\n";}
  33. };
  34.  
  35.  
  36. main()
  37. {
  38. vehicle *unicycle;
  39.  
  40.    unicycle = new vehicle;
  41.    unicycle->message();
  42.    delete unicycle;
  43.  
  44.    unicycle = new car;
  45.    unicycle->message();
  46.    delete unicycle;
  47.  
  48.    unicycle = new truck;
  49.    unicycle->message();
  50.    delete unicycle;
  51.  
  52.    unicycle = new boat;
  53.    unicycle->message();
  54.    delete unicycle;
  55. }
  56.  
  57.  
  58.  
  59. // Result of execution
  60. //
  61. // Vehicle message
  62. // Car message
  63. // Truck message
  64. // Boat message
  65.