I have the following classes:
class A { public: virtual void f() {} }; class B : public A{ public: void f(int x) {} };
If I say>
Class B does not derive from A so no function F() exists. You probably meant:
class A { public: virtual void f() {} }; class B : public A { public: void f(int x) {} };
Edit: I missed the actual function hiding. See Steve Jessop answer for more thorough explanation.