// Verschil tussen overloading en overriding! #include using namespace std; class Base { public: void f(int i) const { cout<<"Base::f(int) called."<f(3); // pb->Derived::f(3); // Error (Borland): 'Derived' is not an unambiguous base class of 'Base' // Error (Microsoft): 'Derived' : is not a member of 'Base' // Error (gcc): `Derived' is not a base of `Base' b.g(3); d.g(3); pb->g(3); pb->Base::g(3); cin.get(); return 0; } /* Output: Base::f(int) called. Derived::f(int) called. Base::f(int) called. Base::g(int) called. Derived::g(int) called. Derived::g(int) called. Base::g(int) called. */