大家好,我是苏貝,本篇博客带大家了解C++的继承,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️
目录
- 1.继承的概念及定义
-
- 1.1 继承的概念
- 1.2 继承定义
-
- (A) 定义格式
- (B) 继承的初尝试
- (C) 继承关系和访问限定符
- (D) 继承基类成员访问方式的变化
- 2.基类和派生类对象赋值转换
- 3.继承中的作用域
- 4.派生类的默认成员函数
我们之前了解了面向对象的第一个特性:封装,我们遇到的封装有下面2种
- 数据和方法放到类中,把想让访问的定义为公有,不想被访问的定义为私有
- 一个类型放到另一个类型的里面,通过typedef或者(成员函数调整?)自定义类型或者运算符重载(迭代器就是一个经典的封装,每个容器的底层结构不同,但提供统一的迭代器的设计和行为)等,封装另一个全新的类型,如iterator和reverse_iterator,vector和stack/queue
1.继承的概念及定义
1.1 继承的概念
继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类或子类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。以前我们接触的复用都是函数复用,继承是类设计层次的复用
1.2 继承定义
(A) 定义格式
下面我们看到Person是父类,也称作基类。Student是子类,也称作派生类。
(B) 继承的初尝试
继承后父类Person的成员(成员函数+成员变量)都会变成子类的一部分。这里体现出了 Student复用了Person的成员
© 继承关系和访问限定符
(D) 继承基类成员访问方式的变化
上