自己对C++虚继承内存对象模型探讨
来源:互联网 发布:sqlserver 日期格式化 编辑:程序博客网 时间:2024/05/17 15:19
本人总结也就是看别人的博客进行总结的,因为我转载的上篇,但是上篇有点错误,所以本人将自己的实践补充下来。
看实例:
class A {
int a;
virtual ~A(){}
};//此时A的大小就是为sizeof(a)+sizeof(ptr) = 8
class B:virtual public A{
virtual ~B(){}
virtual void myfunB(){}
};//此时B是虚继承有点特别,特别就是有无virtual void myfunB(){},如果有的话那表示大小就是sizeof(a)+sizeof(ptr_A虚继承的指针)+sizeof(ptr从A继承来的指针) + sizeof(自身的ptr指针)也就是16.而如果没有的话那表示sizeof(自身ptr指针)= 0,所以总大小也就是12.其中有一点就是有无虚函数析构函数不影响,也就是说有无virtual ~B(){}大小无影响。
class C:virtual public A{
virtual ~C(){}
virtual void myfunC(){}
};//同C
class D:public B,public C{
virtual ~D(){}
virtual void myfunD(){}
};//D此时因为不是虚继承所以大小将为sizeof(a)+sizeof(B中虚继承的指针大小)+虚基类指针B+sizeof(C中虚继承的指针大小)+虚基类指针C
这里没有自身的指针,因为不是虚继承
- 自己对C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++-对象继承内存模型配图
- c++ 继承 33 虚继承对c++ 对象内存模型造成的影响
- 二十八、继承(五) 虚继承对C++对象内存模型造成的影响
- 虚继承内存布局@c++对象模型
- C++继承内存对象模型
- C++继承内存对象模型
- 三十二、C++内存布局,对象大小计算、虚函数虚继承对类内存模型的影响
- c/c++ 深入探讨数组内存模型
- c/c++ 深入探讨数组内存模型
- c/c++ 深入探讨数组内存模型
- 桂林电子科技大学出校流量控制器IPClient Android版1.0.0
- Android XML中实现按钮点击效果以及背景平铺
- glob模块详解
- Android使用View绘制折线图,饼状图,柱状图等
- 安装JadClipse插件 - 总结
- 自己对C++虚继承内存对象模型探讨
- python 多进程之管道实例(模板)
- Adobe进军硬件业务 推出数字笔和电子尺
- 无界面发彩信
- QtCreator:没有CDB二进制档可用为二进制格式在'x86-windows-msvc2008-pe-32bit'"
- 代码高亮(SyntaxHighlighter)插件的使用
- 数据仓库(data warehouse)与商务智能开发工具简介
- select into和insert select
- flex使用filereference+httphandler实现文件上传/下载