質問です。XP、VC++ 6.0 です。

class CParent
{
 public:
  func(int a, int b);
};

class CChild: public CParent
{
 public:
  func(int n);
};

と定義し、

CChild child;
child.func(x, y);

とすると、不正な2つの実引数を持って呼び出されたとエラーがでます。
クラス CParent, CChild の func は引数の個数が違うため、
オーバーロードされないと思うのですが、
なぜこのようなエラーが出るのでしょうか。

child.CParent::func(x,y); とすれば動くことは動くのですが……。