【C++】继承最全解析(什么是继承?继承有什么用?)

07-17 631阅读

目录

一、前言

二、什么是继承 ? 

💢继承的概念💢 

💢继承的定义💢  

🥝定义格式 

🍇继承权限 

三、基类与派生类对象的赋值转换 

四、继承的作用域 

五、派生类中的默认成员函数 

💢默认成员函数的调用 💢

🔥构造函数与析构函数🔥

🔥拷贝构造🔥 

🔥赋值运算符重载 🔥

💢显示成员函数的调用 💢 

🔥构造函数 🔥

🔥拷贝构造 🔥

🔥赋值运算符重载 🔥

🔥析构函数🔥 

六、继承与友元 

七、继承与静态成员

八、菱形继承 

💧 单继承💧

💧 多继承💧

💧 菱形继承💧 

🍍概念 

🍉现象 

九、继承和组合 

十、继承的总结和反思 

十一、共勉 


一、前言

   继承 是 面向对象三大特性之一(封装、继承、多态),所有的面向对象(OO)语言都具备这三个基本特征,封装相关概念已经在《类和对象》系列中介绍过了,今天主要学习的是 继承,即如何在父类的基础之上,构建出各种功能更加丰富的子

【C++】继承最全解析(什么是继承?继承有什么用?)


二、什么是继承 ? 

什么是继承?是继承 -- 遗产 还是继承 -- 花呗?答案都不是,先来看看官方解释:

继承(inheritance)机制是 ----面向对象程序设计使代码可以复用的重要的手段,它允许程序员在保持原有基类(父类)特性的基础上进行扩展,增加功能,这样产生新的类,称为派生类(子类) 


💢继承的概念💢 

【C++】继承最全解析(什么是继承?继承有什么用?)

继承相关概念: 

  • 被继承对象:父类 / 基类 (base)
  • 继承方:子类 / 派生类 (derived)

    继承的本质 就是 ------------ 复用代码 


    举个例子 : 假设我现在要设计一个校园管理系统,那么肯定会设计很多角色类,比如学生、老师、保安、保洁等等之类的。 

    设计好以后,我们发现,有些数据和方法是每个角色都有的,而有些则是每个角色独有的。 

    为了复用代码、提高开发效率,可以从各种角色中选出共同点,组成 基类,比如每个 人 都有姓名、年龄、联系方式等基本信息,而 教职工 与 学生 的区别就在于 管理与被管理,因此可以在 基类 的基础上加一些特殊信息如教职工号 表示 教职工,加上 学号 表示学生,其他细分角色设计也是如此

    这样就可以通过 继承 的方式,复用 基类 的代码,划分出各种 子类 

    【C++】继承最全解析(什么是继承?继承有什么用?)

     像上面共同拥有的数据和方法我们可以重新设计一个类Person ,然后让 Student 和 Teacher 去继承它,如下:

    // 大众类  --- 基础属性
    class Person
    {
    public:
    	Person(string name = string(), string tell = string(), int age = int())
    		:_name(name)
    		,_tell(tell)
    		,_age(age)
    	{}
    	void Print()
    	{
    		cout 
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]