#include<iostream> class a {     virtual void f() = 0; }; class b : virtual a {     b() {} }; class c :virtual a {     virtual void f(); }; int main() {     std::cout << sizeof(a) << "\n" << sizeof(b) << "\n"<<sizeof(c)<<"\n"; } 改成这样之后输出的是 4 8 8 b里的有函数且又有虚函数会变成12,口胡一波,b里两个虚函数指针size 8,b本身有函数声明于是偏移量+1,对齐四位之后就是12了 另外:GCC出来size是4 4 4……
点赞 1

相关推荐

2025-12-14 11:43
黑龙江大学 Java
用微笑面对困难:确实比较烂,可以这么修改:加上大学的qs排名,然后大学简介要写一些,然后硕士大学加大加粗,科研经历第一句话都写上在复旦大学时,主要负责xxxx,简历左上角把学校logo写上,建议用复旦大学的简历模板
点赞 评论 收藏
分享
递归到脑子变傻:杭州还有上位机用VB的,实在没绷住
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务