C++随笔——虚拟继承

虚拟继承

 
C++使用虚拟继承(Virtual Inheritance), 使得派生类如果继承基类多次,但只有一份基类的拷贝在派生类对象中。
虚拟继承的语法:
class  派生类: virtual  基类1,virtual 基类2,...,virtual 基类n{
...//派生类成员声明};
多重继承构造执行顺序:
首先执行虚基类的构造函数,多个虚基类的构造函数按照被继承的顺序构造;
析构以与构造相反的顺序执行;
即便不是虚继承,子类在构造对象时,都会先调用父类的构造函数;析构时先析构自己,然后析构父类
在使用引用时,父类和子类之间进行赋值时,类型不会变化;如果不使用引用,则会强制类型装换为相应的类型
父类可以声明子类(但是尽量少用)
子类在调用父类的函数时需要添加域名
#include <typeinfo>  可以获得当前类型的名称等信息。例如:type_info & t = typeid(*p4);  t.name();

转载于:https://www.cnblogs.com/macong/archive/2013/04/08/3008778.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值