从品牌网站建设到网络营销策划,从策略到执行的一站式服务
继承是面向对象的三大特性之一。子类:继承方式 父类
一、继承方式
1、公共继承
2、保护继承
3、私有继承
继承过来后,成员属性的变化,变化后要注意实例化对象是否能访问:
父类的私有成员,子类都访问不了,但是都隐藏继承到子类的对象上;公共继承父类除私有成员其它成员在子类中访问权限不变;其它继承方式继承父类除去私有成员其它成员访问权限变成与继承方式一样。
二、继承中的对象模型
继承过来的成员,哪些属于子类的对象:不管什么继承方式都在子类的对象上,父类的私有成员只是被编译器隐藏了,但是还是在子类的对象上
利用开发人员命令提示工具可以看到单个对象的布局:
三、继承中构造和析构函数的调用顺序
先调用父类构造,再子类构造,然后就是子类析构,父类析构。
四、继承中同名的成员处理方式
同名成员属性:
1、访问子类中该同名成员,直接调用就好
2、调用父类中该同名成员,加作用域调用
同名的成员函数:
如果子类中出现了和父类同名的成员函数,子类的同名成员会隐藏掉父类所有同名成员函数(包括重载)
想访问到父类中被隐藏的同名成员函数,需要加作用域。
五、继承静态成员的处理方式
复习回忆一下静态成员属性和静态成员函数的特点
1、静态同名,与上述处理方式相同
2、注意:但是可以通过类名访问静态成员:
六、多继承语法
c++允许一个类继承多个父类
1、语法:class 子类:继承方式 父类1,继承方式 父类2......
多继承会引发父类中有同名成员的出现,需要加作用域区分。实际开发中不建议使用多继承。
七、菱形继承问题及解决办法
但是我们最终的数据只用要一份,因此需要用虚继承解决这个问题。此时的共同父类叫做虚基类。是因为这样通过虚基类指针指向虚基类表
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图