// main.cpp // MultiInheritance // Created by Robert Metcalfe on 29/05/13 ... Class inherits from two other classes // Copyright (c) 2013 Robert Metcalfe. All rights reserved. //using namespace std; #include class Pet { public: char *thename; Pet() { }; void putPet(char* tn) { thename = tn; }; }; class Mammal { public: char *aname, *akingdom, *aphylum, *aclass, *anorder, *afamily, *agenus, *aspecies, *abinomial; Mammal() { }; void putMammal(char* an, char* ak, char* ap, char* ac, char* ao, char* af, char* ag, char* as, char *ab) { aname = an; akingdom = ak; aphylum = ap; aclass = ac; anorder = ao; afamily = af; agenus = ag; aspecies = as; abinomial = ab; }; }; class Cat: public Pet, public Mammal { public: Cat(char* tn, char* an, char* ak, char* ap, char* ac, char* ao, char* af, char* ag, char* as, char *ab) { putPet(tn); putMammal(an, ak, ap, ac, ao, af, ag, as, ab); }; void show() { std::cout << "My pet cat is called " << thename << " with Common Name: " << aname << std::endl; std::cout << "Kingdom: " << akingdom << " Phylum: " << aphylum << " Class: " << aclass << " Order: " << anorder << std::endl; std::cout << "Family: " << afamily << " Genus: " << agenus << " Species: " << aspecies << " Binomial name: " << abinomial << std::endl; }; }; int main(int argc, char** argv) { Cat mycat("Kitty", "Domestic Cat", "Animalia", "Chordata", "Mammalia", "Carnivora", "Felidae", "Felis", "F. catus", "Felis catus"); mycat.show(); return 0; }