编译以下类
class Interface
{
virtual void doIt() = 0;
virtual ~Interface() = 0;
};
inline Interface::~Interface() {}
使用
gcc -fdump-class-hierarchy
。gcc
发出类接口(interface)
大小= 4对齐= 4
基本大小= 4基本对齐= 4
接口(interface)(0x1a779c0)0近空
vptr =((&接口(interface):: _ ZTV9Interface)+ 8u)
“几乎为空”的意义是什么?这是什么意思?
最佳答案
C++ ABI提供了“几乎为空”类的定义,并有趣地讨论了它们如何影响vtable的构造:
在研究几乎空的虚拟基础对对象大小,vtable大小和虚拟调用开销的影响时,我遇到了这个问题。