class A
{
virtual void func(void) {}
};

class B : public A
{
virtual void func(void) {}
};

class C : public B
{
virtual void func(void) { A::func(); }
};

こんな記述ができてしまうC++はクソ。
is a関係破壊してるしwww
Java見習え