c++对象模型之虚表,虚表指针,thunk,多态,多重继承this指针偏移,多重继承virtual析构函数,多重虚继承下的访问虚基类成员变量时虚表的工作原理
前言
上两篇文章将c++的核心部件(Value
categories)讲清楚了,这篇文章将会带大家分析c++对象模型的底层原理。笔者这里用的编译器是clang version 10.0.0-4ubuntu1,不同编译器对数据布局的处理可能会不同(《深度探索c++对象模型》中已阐述原因,感兴趣的读者可以自行阅读)。
友情提示:本文章涉及ATT式和intel式汇编代码的相关知识。
虚表和虚表指