随笔分类 - [22]【设计模式】
摘要:【1】什么是工厂方法模式? 定义一个创建产品对象的工厂接口(IFactory),将实际创建工作推迟到子类(addFactory、subFactory、mulFactory、divFactory)当中。 核心工厂类(IFactory)不再负责产品的创建,仅作为一个抽象(有纯虚方法)工厂角色,只负责声明
阅读全文
摘要:【1】什么是代理模式? 为其他对象提供一种代理,并以控制对这个对象的访问。 【2】代理模式代码示例: 示例代码: 1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 class SchoolGirl 6 { 7 p
阅读全文
摘要:【1】什么是装饰模式? 装饰模式:动态地给一个对象添加一些额外的职责。 【2】装饰模式代码示例: 代码如下: 1 #include <string> 2 #include <iostream> 3 using namespace std; 4 5 class Person 6 { 7 private
阅读全文
摘要:【1】什么是策略模式? 坊间的解释都比较拗口,而且不好理解。 所谓策略模式,先构建一个策略(即子类的实例),再利用这个具体的实例构建一个策略对象,通过调用策略对象的接口可以达到相应具体策略的结果。 【2】策略模式代码示例 代码示例: 1 /* 2 * 策略模式 3 */ 4 5 #include <
阅读全文
摘要:【1】什么是简单工厂模式? 核心思想:创建一个具体工厂角色,根据客户端输入的条件产生相应的实体对象,然后由不同实体对象对virtual操作方法的调用得到不同的结果。 理解:根据条件生成不同的实例。利用多态的特性,调用同名方法,不同的实例将得到不同的结果。 【2】代码示例如下: 代码如下: Good
阅读全文