摘要: 测试系统:Windows XP 编译器:VS2008 (四) 虚继承的情况: 如果说没有虚函数的虚继承只是一个噩梦的话,那么这里就是真正的地狱。这个C++中最复杂的继承层次在VC上的实现其实我也没有完全理解,摸爬滚打了一番也算得出了微软的实现方法吧,至于一些刁钻的实现方式我也想不到什么理由来解释它, 阅读全文
posted @ 2018-02-19 22:28 shuziluoji 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 测试系统:Windows XP 编译器:VS2008 (三) 考虑有虚函数的情况下 普通类的情况: 在有虚函数的情况下类会为其增加一个隐藏的成员,虚函数表指针,指向一个虚函数表,虚函数表里面就是类的各个虚函数的地址了。那么,虚函数表指针是以什么模型加入到类里面的,虚函数表里面又是怎么安排的呢。简单来 阅读全文
posted @ 2018-02-19 21:20 shuziluoji 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://www.cnblogs.com/lindeshi/archive/2012/10/20/2732592.html 测试系统:Windows XP 编译器:VS2008 (二) 虚继承的情况 从这里开始分析C++类对象内存布局的难度将会跳跃性的增长,虚继承的情况比单继承和多继承的 阅读全文
posted @ 2018-02-19 21:19 shuziluoji 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://www.cnblogs.com/lindeshi/archive/2012/10/20/2732590.html 测试系统:Windows XP 编译器:VS2008 在写完了本章的初稿之后,我拜读了那本经典的《Inside The C++ Object Model》,深度探索 阅读全文
posted @ 2018-02-19 21:08 shuziluoji 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://www.cnblogs.com/raichen/p/4752025.html 更多内容详见:http://blog.csdn.net/lwbeyond/article/details/6202256 构造函数是干什么的 该类对象被创建时,编译系统对象分配内存空间,并自动调用该构 阅读全文
posted @ 2018-02-19 19:49 shuziluoji 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://www.cnblogs.com/zhoug2020/archive/2012/08/31/2665451.html 有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括: a.引用 b.常量 c.静态 d.静态常量(整 阅读全文
posted @ 2018-02-19 17:45 shuziluoji 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.weixueyuan.net/view/6337.html C++语言继承了C语言的struct,并且加以扩充。在C语言中struct是只能定义数据成员,而不能定义成员函数的。而在C++中,struct类似于class,在其中既可以定义数据成员,又可以定义成员函数。 在C 阅读全文
posted @ 2018-02-19 14:50 shuziluoji 阅读(113) 评论(0) 推荐(0) 编辑