这篇文章给大家分享的是有关C++中继承方式和访问限定符有什么关系的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
创新互联公司专注于高阳企业网站建设,响应式网站,商城开发。高阳网站建设公司,为高阳等地区提供建站服务。全流程按需策划设计,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务继承方式和访问限定符的关系
三种继承方式:
公有继承
私有继承
保护继承
关系:若基类的成员函数为私有,则派生类对基类的私有成员是不可见的,其他的标准为选范围小的为最终访问限定。
保护成员限定符:一些基类成员不想被基类的对象直接访问,但需要在派生类中才能访问,就定义为保护成员。保护成员限定符是因继承才出现的。
理解隐藏
隐藏是指派生类的函数屏蔽了与其同名的基类函数。规则如下:
如果派生类的函数与基类的函数同名,但是参数不同,此时,不论有无virtual关键字,基类的函数将被隐藏。
如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual关键字,此时,基类的函数被隐藏。
派生类的默认成员函数
在派生类中如果没有显示定义一下六个默认成员函数,编译系统会默认合成这六个成员函数。
构造函数
拷贝构造函数
析构函数
赋值操作符重载
取地址操作符重载
const修饰的取地址操作符重载
#includeusing namespace std; class person{ public: person(const char* name) :_name(name) { cout<<"person()"< 菱形继承
菱形继承存在二义性以及数据冗余问题。
例,下图中继承的数据为两份,各不相同:
解决方法:虚继承
在菱形的第二层添加virtual
例:
感谢各位的阅读!关于“C++中继承方式和访问限定符有什么关系”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
文章名称:C++中继承方式和访问限定符有什么关系-创新互联
网站地址:http://cdxtjz.cn/article/dhieep.html