欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > C++ 继承

C++ 继承

2024/10/24 21:19:53 来源:https://blog.csdn.net/Life_winner_king/article/details/141229450  浏览:    关键词:C++ 继承

1.概念

继承机制是面向对象程序设计使代码可以复用的最重要的手段,它应许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生的类,称派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。

2.继承的作用: 实现代码的复用、实现多态。

3.继承的方式:public继承、pretected继承方式、private继承方式。

4.同名隐藏

        4.1概念:如果子类和基类存在同名称的成员,当使用派生类对象调用

该相同名称的成员时,优先调用子类的,派生类的无法直接被调用,相当与子类将基类中同名的成员屏蔽了。

        4.2特性:

基类和子类属于不同的作用域

如果想要通过子类对象调用相同名称的基类成员,必须在该成员前加基类名称及类作用限定符

成员变量的隐藏只与成员变量是否相同有关,与成员变量类型时是否相同无关

成员函数的隐藏只与函数名有关,与函数的返回值参数列表等无关

5.赋值兼容转换规则

子类对象可以直接赋值给基类对象,反过来就不行

基类对象的指针和引用可以直接指向子类对象,反过来不行(不过可以强制类型转换,但是不安全,所以不建议)

6.派生类对象的构造和析构函数

        6.1派生类对象的构造函数

构造那个类的对象,编译器就会调用该类的构造函数

构造函数调用过程:调用派生类构造函数()-->然后在派生类构造函数初始化列表的位置调用基类构造函数,完成基类那一部分成员的初始化工作,最后在执行派生类构造函数函数体

函数体的执行顺序:先执行基类,在执行派生类。

        6.2派生类对象的析构函数

析构那个类的对象,编译器就会调用该类的析构函数

析构函数调用过程:先调用派生类的析构函数,完成在派生类独有的资源的清理,然后编译器在派生类析构函数最后一条语句之后插入了call基类构造函数的汇编指令,即派生类函数的最后一条有效语句执行完后,才会执行基类的析构函数,完成基类中资源的清理

函数体的执行过程: 先执行派生类析构函数函数体,在执行析构函数函数体

        

.

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com