多态:由父类指针统一操作子类对象
多态优点:由父类指针管理子类,可以照顾到未来代码(维护)。比如说添加一个新的子类,只需要重写函数,不必修改源代码
虚函数 :父类指针、引用调用正确的被覆盖的函数,此时成员函数需要声明成虚函数
注意:如果父类中的成员函数是虚函数,那么子类中重写这个函数默认为虚函数
父类指针、引用调用函数:1、查看基类中函数是否为虚函数2、不是的话调用父类成员函数,是的话查看指向,调用对应的对象
虚析构函数:如果有继承,父类中的析构函数必须是虚析构函数 (否则会造成内存泄漏)手动delete时用到
多态的影响:
1⃣️增加内存(类中有虚函数,每个对象默认增加一个指针->虚指针)
2⃣️减慢程序运行的速度(虚指针指向虚函数表,通过遍历虚表,寻址找到调用的对应函数)
抽象基类和纯虚函数ÿ