【C++面向对象学习】多态

学习资料:北京大学郭炜

虚函数

在这里插入图片描述

多态

多态表现形式一:派生类的指针可以赋给基类指针(另述:基类指针可以指向派生类)

在这里插入图片描述
在这里插入图片描述

多态表现形式二:派生类的对象可以赋给基类引用(另述:基类对象可以引用派生类)

在这里插入图片描述
在这里插入图片描述

多态的作用:可扩充性

举例:游戏《魔法门之英雄无敌》

非多态实现:n种怪物写n种对应的Attack
在这里插入图片描述
在这里插入图片描述
多态实现:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

多态的使用技巧:

在这里插入图片描述
在这里插入图片描述

构造函数中和析构函数中调用虚函数不是多态

在这里插入图片描述
在这里插入图片描述

虚函数的访问权限

在这里插入图片描述

多态的实现原理:虚函数表

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

虚析构函数:析构派生类,再析构基类

在这里插入图片描述在这里插入图片描述在这里插入图片描述

纯虚函数和抽象类

在这里插入图片描述在这里插入图片描述在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43154149/article/details/112347315