Just messing around with templates. It works, just wondering if anyone could see any use for what I'm doing.Code:class Human { /* No Implementation, yet */ }; class Male : public Human { public: void Speak() { cout << "I am a man." << endl; } }; class Female : public Human { public: void Speak() { cout << "I am a woman." << endl; } }; class Adult : public Human { public: void Speak() { cout << "I am an adult." << endl; } }; class Child : public Human { public: void Speak() { cout << "I am a child." << endl; } }; template <class Gender, class Age> class Individual : public Gender, public Age { public: void Speak() { Gender::Speak(); Age::Speak(); } }; int main() { Individual<Male, Adult> man; Individual<Female, Adult> woman; Individual<Female, Child> girl; man.Speak(); cout << endl; woman.Speak(); cout << endl; girl.Speak(); return 0; }



LinkBack URL
About LinkBacks




Want to add some