【发布时间】:2011-04-18 04:57:50
【问题描述】:
假设我有一个基类和派生类:
class Base
{
public:
virtual void Do();
}
class Derived:Base
{
public:
virtual void Do();
}
int main()
{
Derived sth;
sth.Do(); // calls Derived::Do OK
sth.Base::Do(); // ERROR; not calls Based::Do
}
如我所见,我希望通过 Derived 访问 Base::Do。但是当我将 Derive 声明为
class Derived: public Base
一切正常。
我已经阅读了默认继承访问是公共的,那为什么我需要在这里显式声明公共继承?
【问题讨论】:
标签: c++ inheritance