博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

多态调用总结

Posted on 2013-05-04 17:13  qianyz  阅读(166)  评论(0编辑  收藏  举报

其实多态调用,总结起来很简单,

1    父类的虚方法在子类中会有拷贝,且slot一一对应

2   编译的时候,如果是变量所在类型里,该函数是虚函数,那么虚函数会形成这样的模式【实际的对象类型】+【slot偏移量】  ,其中slot偏移量对于同一个虚函数来说,他是固定的

     这样在执行的时候,根据实际的类型,就形成多态调用了

    如果是变量所在类型里该函数不是虚函数,在编译后一个指针,直接指向了要调用函数的地址