Наследование интерфейса в C ++

У меня есть следующая структура класса:

class InterfaceA
{ 
   virtual void methodA =0;
}

class ClassA : public InterfaceA
{
   void methodA();
}

class InterfaceB : public InterfaceA
{
   virtual void methodB =0;
}

class ClassAB : public ClassA, public InterfaceB
{ 
   void methodB(); 
}

Теперь следующий код не компилируется:

int main()
{
    InterfaceB* test = new ClassAB();
    test->methodA();
}

Компилятор говорит, что методmethodA() является виртуальным и не реализован. Я думал, что это реализовано вClassA (который реализуетInterfaceA). Кто-нибудь знает, где моя вина?

Ответы на вопрос(4)

Ваш ответ на вопрос