【可乐教育】继承 | 子类默认成员函数 | 单继承与多继承 | 钻石继承 | 虚拟继承
回顾一下面向对象三大特性:封装、继承、多态。
面向对象还有其它特性:反射、抽象。
① C++ Stack 类设计和 C 设计 Stack 对比,封装更好、访问限定符 + 类 狭义。
② 迭代器设计,如果没有迭代器,容器访问只能暴露底层结构。 -> 使用复杂、使用成本很高,对使用者要求极高。
封装了容器底层结构,不暴露底层结构的情况,提供统一的访问容器的方式,降低使用成本,简化使用。
③ stack/queue/priority_queue 的设计 —— 适配器模式。
今天我们的主角是继承。
0x01 继承的概念
继承(inheritance)机制是面向对象程序设计,使代码可以复用的最重要的手段。
它允许程序员在保持原有类特性的基础上进行扩展,以增加功能。这样产生新的类,称为派生类。
继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。
以前我们接触的复用都是函数复用,而继承是类设计层次的复用。
举例:比如我们要设计一个图书管理系统,每个角色的权限是不同的。
发布于:四川省