实现从派生自另一个接口的接口派生的类

时间:2017-04-11 15:47:00

标签: c++ com

我有以下接口和类

public interface IBase
{
    virtual void SomeBaseMethod()=0;
}

public interface IDerived : IBase
{
    virtual void SomeOtherMethod()=0;
}

public class base: public IBase
{
    void SomeBaseMethod(){};
}

public class derived: public base, public IDerived 
{
    void SomeBaseMethod(){};
    void SomeOtherMethod(){};
}

在派生的类中,我必须重复使用已经在我的类库中实现的SomeBaseMethod(){};'。否则我会得到编译错误。有可能不重复' void SomeBaseMethod(){};'在我的班级派生?

1 个答案:

答案 0 :(得分:0)

不幸的是,你必须在这里重复一遍。 C ++具有虚拟继承,可以解决此问题,但您不能将虚拟继承与COM接口一起使用。 Here's an explanation as to why