一个基类的指针或者引用指向子类的对象
基类的指针调用函数时,会查找该对象的虚函数表。虚函数表的地址在对象的首地址。每个对象中保存的是虚函数表的指针,c++内部为每一个类维持一个虚函数表。
虚函数表为啥能准确的查找出相应函数指针呢?
因为在类的设计中,虚函数表直接从父类继承,如果覆盖了某个虚函数,那么虚函数表的指针就会被替换,因此可以根据指针准确找到调用哪个函数。
继承函数只是继承了函数的调用权。
动态绑定取决于指针指向哪个对象。
指向的对象会在虚函数表中查找的调用的函数地址。
虚函数
最新推荐文章于 2024-07-13 14:34:09 发布