#include <iostream>

using std::cout;

class Base {
public:
	virtual int doit() {
		cout << "Base::doit()\n";
	}
};

class Derived : public Base {
public:
	int doit() {
		cout << "--> Entered Derived::doit()\n";
		Base::doit();
		cout << "<-- Leaving Derived::doit()\n";
	}
};

int main() {
	Derived derived;
	Base *pbase = &derived;
	pbase->doit();
	return 0;
}
