小编Roh*_*are的帖子

如何用纯虚函数解决钻石问题

class base
{
  public:
     virtual void display() = 0;
};

class derived : virtual public base
{
 public:
    void display()
    {
        cout << "Display of derived : " << std::endl;
    }
};

class derived1 : virtual public base
{
  public:
    void display()
    {
        cout << "Display of derived : " << std::endl;
    }
};

class derived2 : public derived, derived1
{

};
Run Code Online (Sandbox Code Playgroud)

我将一个纯虚函数放入基类中。我在创建从基类继承的派生类和派生类 1 时使用 virtual 关键字,最后创建了从派生类和派生类 1 继承的派生类 2,然后我会收到错误“派生类:base::void(display) 的继承不明确” “如何解决这个错误?

c++ overriding virtual-functions multiple-inheritance virtual-inheritance

1
推荐指数
1
解决办法
894
查看次数