Module 6. Inheritance Exercise Answers

1.  Only change necessary is to LargeAnimal class header:
   class LargeAnimal : public ZooAnimal  


2.
    cout << gonzo.ZooAnimal::reptName () << endl;


3.  Only change necessary is to the reptName prototype in class ZooAnimal:
      virtual char* reptName ();


4.
   class LargeAnimal : public ZooAnimal, public Mammal


5.
   // -------- member function to return the minimum cage volume
   // -------- needed for this large animal
   float LargeAnimal::reptCageMinimumVolume ()
   {
    if (Mammal::weight < 500)
       return cageMinimumVolume;
    else
       return reptminimumVolume ();
   }


6.
   // -------- member function to return the minimum cage volume
   // -------- needed for this large animal
   float LargeAnimal::reptCageMinimumVolume ()
   {
    if (Mammal::weight < 500)
       return cageMinimumVolume;
    else
       return ZooAnimal::reptWeight ();
   }