读书人

为什么VC里面函数调用,要用一个函数跳

发布时间: 2012-04-20 15:27:03 作者: rapoo

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

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

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


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

读书人网 >C++

热点推荐