之前早就听说这本书不错,如果想对c++进一步的了解可以看看,此书是进阶阶段参考,笔者自己看了书的第一、三、四章节,后面会继续。
      第一章讲了c++的对象模型的引入,各种模型的对比和现在c++采用的模型,比如简单对象模型、表格驱动对象模型、C++采用的是针对简单又参考表格驱动既存对象又虚函数存表格之中。有个疑问,成员函数不在对象放在哪?应该是在编译阶段被编译器转化为了外部函数放在了全局区域类似c函数一样,一般是代码段,使用时被动态的加载更多的参考编译器。后面就是讲了c++对象模型oo思想,虽然c++虚拟化机制增加了空间的开销,但是为c++增强的扩展性。
      第三章讲了数据语义学,类对象中数据占据的大小。1.空类占据一个字节,因为区别类,定位类,对类进行实例化。2.静态数据放在全局不占对象大小。3.虚表有一个指针大小。4.对齐原则。最大对齐原则。5.存储顺序c++标准没有规定,一般按照声明的顺序存储。
      第四章讲了函数对象模型。这里面主要讲了类函数声明定义,重点是虚函数,其他的先不讲了。虚函数的继承虚表问题分为单继承、多继承、虚拟继承。这里分析虚表的布置,单继承子类和基类共享一个虚表,多继承子类和第一个继承的类共享一个虚表,虚拟继承子类不共享父类的虚表。
      先废话到这吧,简单总结一下,讲的比较少,这是笔者自己看书遇到一些问题,总结不是很全,后面有机会再来修改。共勉!

posted on 2015-04-05 22:49  zCoderJoy  阅读(944)  评论(0编辑  收藏  举报