以上述类型为例:
void a_fun_1();为基类虚函数,在派生类b中没有重新进行定义;
void a_fun_2();为基类虚函数,在派生类b中被重新进行定义;
void b_fun_1();为派生类中新增加的虚函数;
那么基类a和派生类b的虚函数表是这样的:
规则是:
在派生类中,如果没有重新定义基类中的虚函数,将直接从原来虚函数表中继承将信息过来;
在派生类中,如果重新定了基类中的虚函数,那么将用新的虚函数地址覆盖原来的虚函数在虚函数表中的信息;
在派生类中,如果重新增加类虚函数,那么将在虚函数表中插入新的虚函数地址信息;
来源:https://www.cnblogs.com/achao123456/p/9609107.html