一、关于c++ 虚函数的用处:
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术
虚函数是指一个类中你希望重载的成员函数 ,当你用一个 基类指针或引用 指向一个继承类对象的时候,调用一个虚函数时, 实际调用的是继承类的版本。 ——摘自MSDN
虚函数最关键的特点是“动态联编”,它可以在运行时判断指针指向的对象,并自动调用相应的函数。
具体解答看:https://www.cnblogs.com/weiyouqing/p/7544988.html
二、关于c++中虚函数的具体实现:
c++中,类中定义的虚函数,都是以虚函数表(Virtual Table)来实现的。每一个 class object 被安插一个指针,指向相关的Virtual Table。通常这个指针被称为 vptr。
详细的解答看:https://blog.csdn.net/lyztyycode/article/details/81326699