#include <iostream>

using std::cout;

class Class1 { public: void doit() { cout << "Class1\n"; } };
class Class2 : public Class1 { };
class Class3 : public Class2 { public: void doit() { cout << "Class3\n"; } };

int main() {
	Class1 obj1;
	obj1.doit();

	Class2 obj2;
	obj2.doit();

	Class3 obj3;
	obj3.doit();

	Class1 *pobj = &obj3;
	pobj->doit();

	return 0;
}
