c++中类对象分配内存大小与虚继承的一些问题
来源:互联网 发布:mac系统下怎么截图 编辑:程序博客网 时间:2024/05/14 08:32
#include <iostream>
class Base
{
public:
int a;
{
public:
int c;
};
class Derive2 : virtual public Base
{
{
};
int main(void)
{
Base bb;
Derive1 d1;
Derive2 d2;
d_Derive dd;
std::cout << sizeof(bb) << std::endl
<< sizeof(d1) << std::endl
<< sizeof(d2) << std::endl
<< sizeof(dd) << std::endl;
return 0;
class Base
{
public:
int a;
};
{
public:
int c;
};
class Derive2 : virtual public Base
{
};
{
};
int main(void)
{
Base bb;
Derive1 d1;
Derive2 d2;
d_Derive dd;
std::cout << sizeof(bb) << std::endl
<< sizeof(d1) << std::endl
<< sizeof(d2) << std::endl
<< sizeof(dd) << std::endl;
return 0;
}
运行结果为:
我的困惑:
1、为什么d1的大小为12
2、为什么d2的大小为8
3、为什么dd的大小为20,不是说虚继承共享虚基类的子对象吗?
。。。。。。还在探索中
0 0
- c++中类对象分配内存大小与虚继承的一些问题
- 虚继承与对象内存大小
- 代码分析虚继承类的所占内存大小问题
- 关于JVM中堆内存大小的分配问题
- (虚)继承类的内存大小计算
- 使用计算总内存大小的方法确定jvm中为对象分配的存储空间大小
- 对于结构体对象在内存中分配地址的顺序及其占内存大小的疑问
- 虚继承类内存大小计算
- Java对象占内存大小分配的初步认识
- c++类与对象,继承,派生的一些知识
- Java中对象的内存分配问题
- C++中对象所占的内存大小
- C动态内存分配:(四)malloc与new分配内存大小查看函数:_msize()/malloc_usable_size
- JAVA类继承过程中其成员的一些问题
- JAVA类继承过程中其成员的一些问题
- JAVA类继承过程中其成员的一些问题
- 【C/C++】C语言中一些容易被人忽略的东西 之一 【内存的分配与释放】
- C++-继承:基类与派生类对象的关系&&继承与组合
- SVN安装使用初级
- I think I Need a Houseboat
- tomcat配置网站位置
- Android Studio 使用 lint 优化代码
- 解决PHPExcel导出长数字末尾几位数为0的问题
- c++中类对象分配内存大小与虚继承的一些问题
- 动态规划算法
- PHP 清除 Excel 导入的数据空格
- leetcode--Unique Paths && Unique Paths ii
- SSH之Tomcat环境配置
- IntelliJ IDEA入门使用—创建Web项目
- 几种经典的网络服务器架构模型的分析与比较
- eclipse环境搭建之三:Python
- 物理层下面的传输媒体