c++对象模型之虚继承
来源:互联网 发布:贪心算法的时间复杂度 编辑:程序博客网 时间:2024/05/16 13:44
class A
{
int a; 如果没有变量a,则sizeof(A) = 1;这是因为当A a,b;为了表明a和b不是同一块内存,编译器会自动为类添加一个char。
};
class B:virtual public A
{
int b;
};
B b; -> 内存[ int a ]
[ int b ]
[ void *pt] 指向 int a 注意:A类里面没有变量,有些编译器会把A的一个字节继承下来,并进行字节对齐。
如果没有virtual,内存如下:
[ int a ]
[ int b ]
class C:virtual public A
{
int c;
};
class D:public B,public C
{
int d;
};
D d;->内存 [ int a ]
[ int b]
[void *ptr] 指向 int a
[ int c]
[ void *ptr2] 指向 int a
[int d]
如果没有virtual
内存[ int a]
[ int b]
[ int a ]
[ int c ]
[ int d ]
- c++对象模型之虚继承
- 【C++】虚函数在不同继承方式中的对象模型
- C++-对象继承内存模型配图
- 深入探索C++对象模型之虚继承
- C++虚继承对象模型
- C++虚继承对象模型
- 【C#】面向对象之继承
- VS2005之virtual继承对象模型
- c++对象模型之菱形继承
- C++继承详解之三——菱形继承+虚继承内存对象模型详解vbptr(1)
- 深度探索c++对象模型之虚继承的对象构造
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承内存对象模型探讨
- C++虚继承分析及对象模型
- umount -a
- source insight使用技巧
- 好消息,KDE4和文件关联
- qt tutorial 7,改了一下为什么不能通过那?
- 神舟的稳定性还是不错的,就是外壳差一些
- c++对象模型之虚继承
- net3层架构
- ARP
- 终于把mini2440改造成用3.7V锂电池供电了
- crontab 里无法连接oracle数据库
- IIS中ftp服务,如何让根目录显示虚拟目录
- Mesa7.0发布和fedora 8的消息
- 歌词
- 一个经典错误