c++对象模型—阅读之一

第一张的标题是关于对象,书上的描述我就不再说了,说说我自己的想法和启示吧。

关键词:

class hierarchy 类得层次结构

这个词比较不错,c++用class hierarchy 将有逻辑联系的对象组织起来。阅读的时候可以轻易的发现他们之间的逻辑联系。而c则用的是让机器更容易理解方式。这就是区别。

对C的宏实现和C++模板定义我认为主要在于对类型的判断的强与弱。

Encapsulation -封装

c++对象模型

1.简单模型独对象

此情况下对象存放的是对象成员的指针(这样为每一个成员制定指针对空间的消耗会比较大)。

2.表格驱动对象模型

对象存储的是2个表格指针,分别指向成员变量和成员函数。

3.对象模型

存储成员变量和Vptr就是一个表格指针。

其中提到一个关于base class Table的运用。

通过在子类中内涵一个指向父类地址的指针,子类通过访问这个

指针继承父类和了解父类的改变。这样父类的改变就不会影响到子类。

关于Struct与class争论的意义不大,注意struct重点在数据萃取而class在数据抽象就对了

多态也就是一个指针与指针域的问题

posted @ 2011-08-09 15:57  卡普  阅读(285)  评论(0)    收藏  举报