C++基础 (6) 第六天 继承 虚函数 虚继承 多态 虚函数
继承是一种耦合度很强的关系 和父类代码很多都重复的
2 继承的概念
3 继承的概念和推演
语法:
class 派生类:访问修饰符 基类
代码:
… …
4 继承方式与访问控制权限
相对的说法:
爹派生
儿子继承
子类虽然看起来是在父类的基础上增加了一些东西
但实际上子类和父类是完全独立的两个东西
5 继承方式的练习
…
…
…
6 继承类的兼容性原则
子类空间比父类空间大
7 利用兼容性原则的传参方式
声明一个父类的指针 子类都可以使用
声明一个父类的指针 子类都可以使用
8 继承中的构造析构顺序
结论:子类在进行初始化成员变量的时候,如果此成员变量是继承过来的,那么需要调用父类的构造器来初始化
9 当子类中有和父类重名的变量
如果想访问父类中的a需要加上父类的作用域,否则调用的是子类中覆盖的a
10 继承中的static成员
static不仅要在内部声明 也要在外部进行初始化
11 多继承的基本概念
12 多继承和虚继承
需要使用虚继承
(这里b不知道是哪个的,产生二义性
(编译器干的事情)
13 中午回顾
14 多态的基本概念
多态:可以用父类指针调用子类的方法,前提是(子类重写父类的虚函数
15 多态小案例练习
16 多态的成立条件
17 动态联编和静态联编
加virtual关键字告诉编译器这块先别给我绑定 来个晚绑定,如果不加virtual就是静态联编了
18 虚析构函数
加上virtual关键字后正常了
19 重载重写重定义
重载 名字和返回值一样的两个函数
重写 (虚函数 加vitrual 两个类中
重定义 两个类中
==========================================
// 2020.06.12 理解 继承的本质是申请与父类相同大小空间的结构体