永发信息网

C++中虚继承与普通继承的sizeof问题,求大神解

答案:1  悬赏:20  手机版
解决时间 2021-04-03 00:36
C++中虚继承与普通继承的sizeof问题,求大神解
最佳答案
对于class A,
(1)由于含有虚函数,包含虚函数指针,大小4字节。
(2)a数组的类型是char,大小是3,占3字节,因为需要前面对齐到4的整数倍,所以有1个占位符。
因此,总的大小是4+3+1=8

对于class B,
(1)由于含有虚函数,包含虚函数指针,大小4字节。
(2)b数组类型是char,大小是3,占3字节。因为需要前面对齐到4的整数倍,所以有1个占位符。
(3)继承A的char数组,大小是3,占3字节。因为需要前面对齐到4的整数倍,所以有1个占位符。
因此,总的大小是4+3+1+3+1=12

对于class C,
(1)由于含有虚函数,包含虚函数指针,大小4字节。
(2)c数组类型是char,大小是3,占3字节。因为需要前面对齐到4的整数倍,所以有1个占位符。
(3)由于是虚继承,有一个指向父类的指针,大小字节。
(4)父类A本身大小为8字节。
因此,总的大小为4+3+1+4+8=20追问大神,A中的char a[3]不是private吗?为什么B还能继承a呢?追答这跟private没啥关系,原来多大就多大,能不能用是另外一回事
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
取关是什么意思
明日之后手游的营地在MUMU模拟器里面怎么创建
带长剑兮挟秦弓,首身离兮心不惩
下列关于种群密度调查的叙述,不合理的是( 
自由锻与模锻相比,其主要不同的点是什么?
为什么苹果手机显示apple id已被停用
梁静茹曾唱过的英文名歌曲
国电廊坊热电厂待遇怎么样?,我是热能毕业生
夏天下雨打雷很响闪电很吓人在房间里关着窗看
想借问日文一下
美图秀秀我也是醉了 白了好多 但我不p图也是
此时此刻有在听固安广播电台的么
港人满60岁有一女在港但无能力抚养可再申请另
从庄浪走青海湖哪条路线最短
一张标准罗汉床需要多少大果紫檀木料
推荐资讯
公积金每月240元能贷多少款
英语作文怎么写六百个字
羊年出生,姓李名字品烨是什么含义
如果有理数a是最小的正整数,b是最大的负整数
日本壮熊片的连接地址要免费的,谢了
韩国喜剧电视剧推荐
买的活嘎鱼,肚子里面有像蛆一样的白色不明物
晚上不发困怎没办?
设备安装定额中设备安装高度要超过多少标高才
得到的压岁钱是妈妈给别人再还回来的吗?
求洛天依黑暗风歌
我国宋代学者沈括在《梦溪笔谈》记载:“登州
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?