虚函数的作用
的有关信息介绍如下:被virtual关键字修饰的成员函数,就是虚函数。
实现多态性,多态性是将接口与实现进行分离。
当调用一个虚函数时,被执行的代码必须和调用函数的对象的动态类型相一致。
允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问基类和派生类中的同名函数。
当基类指针指向一个子类对象,通过这个指针调用子类和基类同名成员函数的时候,基类声明为虚函数就会调子类的这个函数,不声明就会调用基类的。
在使用指向子类对象的基类指针,并调用子类中的覆盖函数时,如果该函数不是虚函数,那么将调用基类中的该函数;如果该函数杰牺是虚函数,则会调用子类中的该函数。
定义子类对象,并调用对象中未被荡裹薪子类覆盖的基盯轿类函数A。同时在该函数A中,又调用了已被子类覆盖的基类函数B。那此时将会调用基类中的函数B,可我们本应该调用的是子类中的覆盖函数B。虚函数即能解决这个问题。