后端开发
虚表 标签描述

经过之前的学习我们知道了,继承能够实现多态的原理就是,在继承的父类和子类中各自存在一个虚表,父类和子类的虚表中各自储存了自己的虚函数,不同的点就是如果我们完成了虚函数的重写,那么子类(派生类)虚表中的那个虚函数地址是重写后的虚函数的地址。所以我们虚函数重写还有一个名字就是虚函数的覆盖,形象一点的说,那么虚函数的重写,就是子类将重写后的虚函数的地址,覆盖在了为重写前的虚函数的地址上。当然这只是一个形象的说法而已,底层不一定就是这样做的。下面我们再来深入的理解一下多态的实现。 虚函数表和虚函数的存在位置 首先我们知道正是因为虚表的存在所以才存在了多态,那么我们思考一下,虚表以及虚函数是存在哪一个区...