C ++ не может преобразовать базовый A в производный тип B через виртуальный базовый A

У меня три класса:

class A {};

class B : virtual public A {};
class C : virtual public A {};

class D: public B, public C {};

Попытка статического преобразования из A * в B * Я получаю следующую ошибку:

cannot convert from base A to derived type B via virtual base A
51
задан curiousguy 25 December 2015 в 17:32
поделиться