c++虚函数


先理解下虚函数和虚表

 

1C++类的成员函数在声明时,若使用关键字 virtual 进行修饰,则被称为虚函数。

2)一个类中可能有很多个虚函数。

3)虚函数的入口地址被统一保存在虚表(Vtable)中。

4)对象在使用虚函数时,先通过虚表指针找到虚表,然后从虚表中取出最终的函数入口地址进行调用。

5)虚表指针保存在对象的内存空间中,紧接着虚表指针的是其他成员变量。

6)虚函数只有通过对象指针的引用才能显示出其动态调用的特性。

 

C++虚函数的入口地址被统一存在虚表中,对象使用虚函数时通过调用虚表指针找到虚表,然后从虚表中取出最终的函数入口地址进行调用,虚表指针保存在内存空间中,紧接着虚表指针的是其他成员变量,虚函数只有通过对象指针的引用才能显示出其动态调用特性。

 

 

posted @   Stickycat  阅读(112)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示