首页 > 代码库 > 什么是虚继承?
什么是虚继承?
虚拟继承是多重继承中特有的概念,
类D继承自类B1,B2,而类B1,B2都继承自类A,
当类A为非虚基类,即类B1,B2非虚继承类A时,继承关系如下图:
A A
↓ ↓
B1 B2
↘ D ↙
代码如下:
1 class A{};2 class B1 : public A{};3 class B2 : public A{};4 class D : public B1, public B2{};
因此,为了节省内存空间,可以将类A定义为虚基类,即类B1,B2虚继承类A,继承关系如下:
A
↙ ↘
B1 B2
↘ D ↙
代码如下:
1 class A{};2 class B1 : virtual public A{};3 class B2 : virtual public A{};4 class D : public B1, public B2{};
什么是虚继承?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。