摘要: 一,巡防算法 for_each(容器起始地址,容器结束地址,要执行的方法)#include <iostream> #include <algorithm> #include <vector> using namespace std; template<class T> struct plus2 { void operator()(T&x)const { x+=2; } }; void printElem(int& elem) { cout << elem << endl; } int main() { in 阅读全文
posted @ 2012-06-23 22:53 MXi4oyu 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 中介者模式(Mediator Pattern),定义一个中介对象来封装系列对象之间的交互。中介者使各个对象不需要显示地相互引用,从而使其耦合性松散,而且可以独立地改变他们之间的交互。 使用中介者模式的动机: 面向对象设计鼓励将行为分布到各个对象中。这种分布可能会导致对相间有须有链接。在最坏的情况下,每个对象都知道其他所有对象。 虽然将一个系统分割成许多对象通常可以增加可复用性,但是对相间相互链接的激增又会降低其可复用性。大量的相互链接使得一个对象似乎不太可能在没有其他对象的支持下工作--系统表现为一个不可分割的整体。而且,对系统的行为进行任何较大的改动都十分困难,因为行为被分布在许多对... 阅读全文
posted @ 2012-06-23 16:49 MXi4oyu 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 一,概述 工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。 工厂方法模式是简单工厂模式的衍生,解决了许多简单工厂模式的问题: 首先完全实现‘开-闭 原则’,实现了可扩展。 其次更复杂的层次结构,可以应用于产品结果复杂的场合。 工厂方法模式的对简单工厂模式进行了抽象。有一个抽象的Factory类(可以是抽象类和接口),这个类将不在负责具体的产.. 阅读全文
posted @ 2012-06-23 00:49 MXi4oyu 阅读(167) 评论(0) 推荐(0) 编辑