C++多态实现机制

匿名网友 匿名网友 发布于: 2015-12-29 00:00:00
阅读 189 收藏 0 点赞 0 评论 0

在C++中,对于有virtual的类,其sizeof会比正常情况多处4个字节。既在类的最开始四个字节,放的是VTABLE表的地址(void *类型)。而在VTABLE中,所有虚函数是以指针数组的形式存放。 对于派生的类,即时没有重载基类的虚函数,也会在其VTABLE占用一格。造成空间上的浪费。非虚基类没有VTABLE,VTABLE是在构造的时候编译器生成的。

评论列表
文章目录