关闭

虚表浅析

57人阅读 评论(0) 收藏 举报
分类:

  C++一个类中有虚函数的话就会有一个虚表指针,其指向对应的虚表,一般一个类只会有一个虚表,每个虚表有多个”插槽”,每个插槽存放一个虚函数的地址。插槽中的内容可以被覆盖,子类如果重写了父类中的虚函数,则插槽中对应位置的数据被覆盖。虚表存放的是虚函数地址,不管该虚函数是public还是private的。光文字说明不太形象,下面上一张虚表结构的示例图:

根据示例图可以明确的知道,虚表是一个函数指针数组,通过虚指针作为访问虚表的入口地址。

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5376次
    • 积分:372
    • 等级:
    • 排名:千里之外
    • 原创:26篇
    • 转载:26篇
    • 译文:2篇
    • 评论:3条
    文章分类
    最新评论