| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 798 人关注过本帖
标题:虚基类多出来的空间问题
取消只看楼主 加入收藏
civilherui
Rank: 2
来 自:陕西榆林
等 级:论坛游民
威 望:2
帖 子:67
专家分:97
注 册:2015-1-18
结帖率:100%
收藏
 问题点数:0 回复次数:2 
虚基类多出来的空间问题
#include<iostream>
using namespace std;
class sample3
{
    public:
    int a;
    int d;
};
class sample1:virtual public sample3
{
    public:
    int b;
};
class sample2:virtual public sample3
{
    public:
    int c;
};
class sample:public sample1,public sample2
{
};
int main()
{
    sample obj;
    cout<<sizeof(sample1)<<endl;
    cout<<sizeof(sample)<<endl;   
}
这个程序输出结果是16和24,sample1类多出的4个字节用来存放什么?还有sample多出的8个字节用来存放什么?

我走向的将是机械、电子、编程的集成之路。
2015-09-05 00:17
civilherui
Rank: 2
来 自:陕西榆林
等 级:论坛游民
威 望:2
帖 子:67
专家分:97
注 册:2015-1-18
收藏
得分:0 
大概猜测应该是一个地址,我又认为它是地址,顺着地址找是一个12字节的数据,不知道是什么。

我走向的将是机械、电子、编程的集成之路。
2015-09-05 17:29
civilherui
Rank: 2
来 自:陕西榆林
等 级:论坛游民
威 望:2
帖 子:67
专家分:97
注 册:2015-1-18
收藏
得分:0 
回复 3楼 TonyDeng
哦,谢谢,但是我看的书上没讲。

我走向的将是机械、电子、编程的集成之路。
2015-09-06 18:09
快速回复:虚基类多出来的空间问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017074 second(s), 10 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved