#include
using namespace std;
class Base {
public:
virtual void foo( ) {cout << "Base::foo( )" << endl;}
};
class Derived : public Base {
public:
virtual void foo( ) {cout << "Derived::foo( )" << endl;}
};
int main( ) {
Derived* p = new Derived( );
p->foo( ); // Calls the derived version
p->Base::foo( ); // Calls the base version
}
Derived::foo( )
Base::foo( )