在Microsoft编译器下,vbi在C ++中代表什么?

时间:2014-04-29 12:19:02

标签: c++ visual-studio

示例代码:

class A
{
protected:
    int a;
};

class B : public virtual A
{
protected:
    int b;
};

class C : public virtual A
{
protected:
    int c;
};

class D : public B, public C
{
protected:
    int d;
};

我使用 cl / d1 reportSingleClassLayout 命令查看 Class D 的对象模型,然后我发现有一个我从未见过的名为vbi的数据。

enter image description here

1 个答案:

答案 0 :(得分:1)

我的猜测是虚拟基础信息。该表基本上告诉您A(由BC共享)的共享实现距离类D的开头是20个字节。