2016-10-25 17 views
4

像GCC/VC这样的流行实现使用多态对象的第一个size_t空间作为指针,指向一个vtable结构。这是最新的C++ ABI的一部分吗?C++ ABI是否指定vTable和RTTI信息应该如何存在?

RTTI实现,C++ ABI指定如何实现? 谢谢

+3

据我所知,C++没有统一的C++ ABI。我认为你必须从编译器读取它到编译器。但我不是编译器的人。 –

+0

该标准没有规定虚拟函数或RTTI的实现。因此,没有ABI是强制性的。 – StoryTeller

+0

我不认为这是第一个'size_t'空间。它可能是第一个'void *'空间,或者可能是第一个'intptr_t'空间。 – Angew

回答

8

不,C++标准没有指定应该如何实现这些。没有单一的C++ ABI。

+0

@Yakk:就这样吧:) –