Implementing abstract class members in a parent class

后端 未结 4 948
小蘑菇
小蘑菇 2020-12-21 09:07

Is it possible to implement an abstract base class with members inherited from another parent class in C++?

It works in C#, so I tried doing it in C

4条回答
  •  一整个雨季
    2020-12-21 09:33

    Try to use virtual inheritance

    class ITalk
    {
    public:
      virtual void SayHi() = 0;
    };
    
    class Parent: virtual ITalk
    {
    public:
       void SayHi();
    };
    
    class Child : public Parent, public virtual ITalk
    {
    };
    
    void Parent::SayHi()
    {
        std::printf("Hi\n");
    }
    

提交回复
热议问题