C++中基类和派生类虚函数访问权限是否合理?
class Base
{
public:
virtual void func(){cout<<"Base"<<endl;}
};
class Derived: Base
{
private:
virtual void func(){cout<<"Derived"<<endl;}
};
int main()
{
Base *b = new Derived();
b->func();
}
实际调用为Derived::func();
请问这种以基类指针访问权限为准的设计有什么好处,是否破坏了派生类的访问机制?