首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

为什么VC里面函数调用,要用一个函数跳转表来做2次call?解决方法

2012-04-20 
为什么VC里面函数调用,要用一个函数跳转表来做2次call?一般,我写一个函数,那么在caller调用它的时侯,汇编

为什么VC里面函数调用,要用一个函数跳转表来做2次call?
一般,我写一个函数,那么在caller调用它的时侯,汇编那一层就是call callee的地址就可以了。

但是Vc似乎很奇怪,它把所有的函数调用/类函数调用的地址放在一个表里面,caller调用某个函数的时候,先call到这个表当中的某个位置,查找到相应的函数真正地址,jum过去。

就连ctor和dtor也不是直接call指令调用的,也是通过了这么一个跳转表。我觉得有点多余啊,平添了一层调用的开销。


[解决办法]
google下虚函数表之类的内容吧。

热点排行