以下面的代码片段为例:
struct Foo
{
typedef int type;
};
class Bar : private Foo
{
};
class Baz
{
};
如您所见,这种关系中不存在虚函数。既然是这种情况,就语言而言,以下假设是否准确?
- 不会创建虚函数表
Bar
。 sizeof(Bar) == sizeof(Baz)
基本上,我想弄清楚我是否会为此付出任何惩罚。我的初始测试(尽管在单个编译器上)表明我的断言是有效的,但我不确定这是我的编译器的优化器还是负责我所看到的内容的语言规范。