C++草原三剑客之一:继承
目录
1 继承的概念及其定义
1.1 继承的概念
1.2 继承的定义
1.2.1 定义格式
1.2.2 继承方式以及继承基类成员访问方式的变化
1.3 继承类模板
2 基类和派生类之间的转换
3 继承中的作用域
3.1 隐藏规则
3.2 两道考察继承作用的相关易错题
4 派生类的默认成员函数
4.1 4个常见的默认成员函数
4.2 实现一个不能被继承的类
5 继承与友元
6 继承与静态成员
7 多继承及其菱形继承的问题
7.1 概念介绍
7.1.1 单继承
7.1.2 多继承
7.1.3 菱形继承
7.2 虚函数
8 继承和组合
1 继承的概念及其定义
1.1 继承的概念
继承机制是面向对象程序设计使得代码可以复用的最重要的手段,它允许我们在保持原有类特性的基础上进行扩展,增加方法(成员函数)和属性(成员变量),这样产生新的类,称之为是派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。以前我们接触到的是函数层次的复用,而我们这里的继承是类设计层次的复用,我们接下来通过一段代码来说明一下这个继承知识的意义(原因):(我们这里写一个老师和学生的相关信息及其活动等操作)
好了,我们这里将代码做成图片的形式来看效果会更好一些,通过我们这里上述所写的两个类来看的话,这两个类中有许多相似的地方,就比如说,都有identity()这个成员函数,都含有成员变量_name、_address、_tel、_age,每次定义类声明时,都要写这几个成员,这些相同的成员它们设计到两个类中明显有点冗余,我们在这里可以有继承来解决,将这两个类里均相同的成员全部统一放到一个类中,将不同的成员分别放在各自的类中不动,用继承去复用那两个类中都含所有的成员。
class person//我们这个写一个类,这个类中的所有成员均是上面student和teacher的两个类中都含有的成员 { public: void identity() { cout