Overriding a Base's Overloaded Function in C++ [duplicate]
问题 Possible Duplicate: C++ overload resolution I ran into a problem where after my class overrode a function of its base class, all of the overloaded versions of the functions were then hidden. Is this by design or am I just doing something wrong? Ex. class foo { public: foo(void); ~foo(void); virtual void a(int); virtual void a(double); }; class bar : public foo { public: bar(void); ~bar(void); void a(int); }; the following would then give a compile error saying there is no a(double) function