1.1 继承和派生基本概念

来源:互联网 发布:手机淘宝官网首页登录 编辑:程序博客网 时间:2024/05/06 13:02

1.1 继承和派生基本概念

基本概念

继承和派生是从不同的角度看同一过程:

  • 继承是保持已有类的特性而构造新类的过程。
  • 派生是在已有类的基础上新增自己的特性而产生的新类的过程。

这里写图片描述

通常,我们将已有类称为基类,将新类称为派生类。

  • 基类:可供其他类继承的类。
  • 派生类:从其他类派生而来的类。

根据类继承的层次,出现直接基类和间接基类两个概念。

  • 直接基类:派生类直接继承的基类。直接基类在派生类的派生列表中说明。直接基类本身也可以是一个派生类。
  • 间接基类:不出现在派生类的派生列表中的基类。直接基类以直接或间接方式继承的类是派生类的间接基类。

这里写图片描述

派生类的构成

  • 吸收基类的成员。
    • 默认情况下,派生类包含了基类中除拷贝控制成员(默认构造函数、拷贝构造函数、移动构造函数、拷贝赋值运算符、移动赋值运算符、析构函数)和普通构造函数之外的所有成员(数据成员和成员函数)。
    • C++11标准规定,派生类可以使用using声明语句继承基类的普通构造函数。
  • 改造基类的成员。
    • 如果派生类声明了一个和基类成员同名的新成员(数据成员和成员函数),派生类的新成员就隐藏或覆盖了外层同名成员(数据成员和成员函数)。
  • 添加新的成员。
    • 派生类增加的新成员(数据成员和成员函数)使派生类在功能上有所发展。

这里写图片描述

派生类的定义

这里写图片描述

派生类必须通过使用类派生列表明确指出它是从哪个(哪些)基类继承而来的。

类派生列表的形式是:首先是一个冒号,后面紧跟以逗号分隔的基类列表,其中每个基类前面可以有以下三种访问说明符中的一个:public、protected或者private。

原创粉丝点击