摘要:
定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态类型:行为类类图:class Memento{public: Memento(int level,int life,int time):m_level(level),m_li... 阅读全文
摘要:
1. Client创建一个ConcreteCommand对象并指定他的Receiver对象2. 某个Invoker对象存储该ConcreteCommand对象3. 该Invoker通过调用Command对象的Execute操作来提交一个请求。若该命令是可撤销的,ConcreteCommand就在执行... 阅读全文
摘要:
抽象主题(Subject):它把所有观察者对象的引用保存到一个聚集里,每个主题都可以有任何数量的观察者。抽象主题提供一个接口,可以增加和删除观察者对象。具体主题(ConcreteSubject):将有关状态存入具体观察者对象;在具体主题内部状态改变时,给所有登记过的观察者发出通知。抽象观察者(Obs... 阅读全文
摘要:
状态模式(State),当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。Context中有成员变量标志其状态,在每次请求过后,在具体状态类中设置其变化至的类。// State.cpp : Defines the entry point for the console appl... 阅读全文
摘要:
职责链模式:对于一个请求,自己处理不了的,交于上级处理,形成了一个职责链,依次交于上级处理// Responsibility.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include... 阅读全文
摘要:
递归的归并排序// MergeSorttest.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include using namespace std;void Merg... 阅读全文
摘要:
我觉得Posix下比较好的一种方式int pthread_once(pthread_once_t *once_control, void (*init_routine) (void));功能:本函数使用初值为PTHREAD_ONCE_INIT的once_control变量保证init_routine... 阅读全文
摘要:
// VistorMode.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include using namespace std;class B;class A{public: /... 阅读全文
摘要:
定义:封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。类型:行为类模式类图:结构对象中的元素类在accept的时候将自身作为参数 vistor类,Vistor类通过此参数获得一些相关信息。代码中:Person为Element抽象类 Man ... 阅读全文
摘要:
两个类之间通信,不通过直接通信的方式,而是中间加一层类似于中介的类,中介者模式,就类比租房时找中介那会// Mediator.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include... 阅读全文