小编K S*_*iel的帖子

为什么抽象类的实现看不到重载的纯虚函数?

给出以下代码示例,为什么重载AbstractBaseClass::DoAThing( const char* )不可见作为SomeEndClass实现重载纯抽象DoAThing( const char* const* )方法的继承方法?

class AbstractBaseClass
{
    public:

        virtual void DoAThing( const char* withThis ) {}
        virtual void DoAThing( const char* const* withThat ) = 0;

        AbstractBaseClass() {}
        virtual ~AbstractBaseClass() {}
};

class SomeMiddlewareClass : public AbstractBaseClass
{
    public:

        void ThisIsCool() {}

        SomeMiddlewareClass() {}
        virtual ~SomeMiddlewareClass() {}
};

class SomeEndClass : public SomeMiddlewareClass
{
    public:

        void DoAThing( const char* const* withThat ) {}

        SomeEndClass() {}
        virtual ~SomeEndClass() {}
};

void …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance abstract-class pure-virtual

4
推荐指数
2
解决办法
435
查看次数

标签 统计

abstract-class ×1

c++ ×1

inheritance ×1

pure-virtual ×1