C++ cannot convert from base A to derived type B via virtual base A

后端 未结 7 1473
不知归路
不知归路 2020-12-04 16:43

I have three classes:

class A {};

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

class D: public B, public C {};

Attemptin

7条回答
  •  清歌不尽
    2020-12-04 16:51

    As far as I know, you need to use dynamic_cast because the inheritance is virtual and you're downcasting.

提交回复
热议问题