开发者社区 问答 正文

什么是virtual-thunk和non-virtual-thunk?

什么是virtual-thunk和non-virtual-thunk?

展开
收起
不吃核桃 2024-08-06 11:45:37 235 分享 版权
1 条回答
写回答
取消 提交回答
  • 在C++的继承体系中,特别是涉及到虚函数继承和虚继承时,编译器会生成不同类型的thunk函数来处理this指针的偏移。virtual-thunk特指在虚函数继承中,当派生类覆盖了一个来自虚继承基类的虚函数时,编译器生成的thunk函数。它用于调整this指针,确保正确地调用到派生类的虚函数实现。而non-virtual-thunk可能用于其他非虚函数继承但需要this指针调整的场景。

    2024-08-06 15:18:58
    赞同 2 展开评论
问答地址: