c++ 之继承

继承就是数据的复制,仅此而已;减少重复代码的编写。

子类继承父类,会把父亲的所有成员增加进子类,形成一个更大的类。

    父类指针可以指向子类的对象,因为子类前面就是父类的成员,即父类可以访问靠前的父类的成员部分。
    编译器不允许父类指针访问属于子类的成员,从底层来说其实通过指针的+1也可以访问子类的成员,不建议。

    子类指针指向父类对象,不要用;
    子类指针虽可以指向父类(强转),但太危险。因为父类没有子类的成员,当访问子类成员时,会溢出。

    多重继承,子类继承父类、继承爷爷类...
    爷爷指针也可以指向子类的对象;

子类与父类的成员名字一样,对于编译器它根本不管这个。需指定类名::成员变量访问。

    子类有两个及多个父类,重名也并不影响。要是不等待编译器是谁的成员,编译器自己找一个。
    此继承比较复杂,因有两个或多个父类,需维护多个首地址。父类排放有前后,就有了多个父类首地址;

    继承后 private 也被复制过来了,只是编译器不让用。其实通过指针的++也可以访问,不建议。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值