摘要: 我们知道,一般的,每个类只初始化自己的直接基类。但是在有虚基类存在的时候,这个初始化策略就会失败。因为如果使用这种初始化策略,就会可能多次初始化虚基类,类将沿着包含该虚基类的每个继承路径初始化。所以,为了解决这个重复初始化问题,需要从具有虚基类的类继承的类对初始化进行特殊处理。就是在虚派生中,由最底层派生类的构造函数初始化虚基类。 下面,我们来看一个例子,其继承关系是这样的,有三个基类,分别是人类Human、行为Behavior和非人类行为NonhumanFeature,男人Man和女人Woman公有虚拟继承自Human,人类行为HumanBehavior公有虚拟继承行为Behavior... 阅读全文
posted @ 2012-10-27 15:11 venow 阅读(568) 评论(0) 推荐(0)
摘要: 单例模式定义: 只有一个实例,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。单例模式特点: 1、这个类只能有一个实例 2、这个类必须自行创建这个实例 3、这个类必须自行向整个系统提供这个实例单例模式解析: 下面是单例模式的UML图: 下面是简单代码实现://单例模式class Singleton{public: static Singleton* CreateInstance(); static void DestoryInstance(); ~Singleton... 阅读全文
posted @ 2012-10-27 10:47 venow 阅读(413) 评论(0) 推荐(0)