多态之纯虚函数抽象类
抽象类概念
类若含有纯虚函数则称类为抽象类
抽象类特点
1.无论在堆区还是栈区,抽象类都无法实例化对象
2.抽象类的子类,必须重写父类中的纯虚函数否则也属于抽象类(可以理解为父类抽象的存在就是为了子类的重写,否则其存在无意义)。
多态案例制作饮品:咖啡,茶等饮品制作步骤大致如下:
1.煮水(Boil)
2.冲泡(Brew)
3.倒入杯中(Pourintocup)
4.加入辅料 (Addaccessories)
但是饮品的不同,在冲泡和加入辅料的操作也不同。
第一步先创建抽象类:
第二步:创建子类 咖啡 和茶
第三步创建工作函数,目的是为了调用父类makeDrink中的虚构函数。
![在这里插入图片描述](https://img-blog.****img.cn/20200811170539994.PNG
这里dowork传入的是父类抽象类指针,抽象类不可实例化
利用new手动开辟子类对象的地址,但要记得在dowork中释放相应的地址,防止出现 堆区数据内存泄漏
![在这里插入!链机制,建议将保存描
在main函数中调用测试函数test01
运行成功。
初学者创作