摘要:
意图:将对象组合成树型结构以表示”部分-整体”的层次结构。Composite使得用户对于单个对象和组合对象的使用具有一致性Compoite模式的关键是一个抽象类,即表示具体类也表示容器.示意图:适用性:你想表示对象的部分-整体层次结构你希望用户忽略组合对象和单个对象的不同,用户将统一的使用组合结构中的所有对象示例代码:animal:单个对象//单个动物实体class CAnimal{int id;public: CAnimal(int i) { id = i; }public: ~CAnimal(void) { }public: virtual void MadeSound()=0;//动物. 阅读全文
摘要:
意图:为一系列相关对象或相互依赖对象提供一个创建接口.示意图:AbstractFactory为创建对象声明一个接口,真正创建对象由ConcreteFactory(FactoryA/FactoryB)实现.一个具体的工厂将为每个产品中定义该工厂方法以指定产品.适用性:一个系统要独立于他的产品的创建,组合和表示时一个系统要由多个产品系列中的一个配置时当你强调一系列相关的产品对象的设计以便进行联合使用时当你提供一个产品类库,而只想显示它们的接口而不是实现时代码示例:client://具体创建何种产品有Factory决定void DisplayInfo(CFactory& factory) { 阅读全文