虚函数表

 

以上述类型为例:

        

         void a_fun_1();为基类虚函数,在派生类b中没有重新进行定义;

         void a_fun_2();为基类虚函数,在派生类b中被重新进行定义;

    void b_fun_1();为派生类中新增加的虚函数;

 

那么基类a和派生类b的虚函数表是这样的:

 

规则是:

在派生类中,如果没有重新定义基类中的虚函数,将直接从原来虚函数表中继承将信息过来;

在派生类中,如果重新定了基类中的虚函数,那么将用新的虚函数地址覆盖原来的虚函数在虚函数表中的信息;

在派生类中,如果重新增加类虚函数,那么将在虚函数表中插入新的虚函数地址信息;

posted on 2018-09-08 14:17  HelloWorldTotti  阅读(193)  评论(0编辑  收藏  举报

导航