c++ 23种设计模式之备忘录模式
2013-01-23 15:35
351 查看
#include <iostream> #include <string> using namespace std; //c++ 23种设计模式之备忘录模式 class Memo; // 发起人类 class Originator { public: string state; Memo* CreateMemo(); void SetMemo(Memo* memo); void Show() { cout<<"状态:"<<state<<endl; } }; // 备忘录类 class Memo { public: string state; Memo(string strState) { state= strState; } }; Memo* Originator::CreateMemo() { return new Memo(state); } void Originator::SetMemo(Memo* memo) { state = memo->state; } // 管理者类 class Caretaker { public: Memo* memo; }; //客户端: int main() { Originator* on=new Originator(); on->state = "on"; on->Show(); Caretaker* c= new Caretaker(); c->memo = on->CreateMemo(); on->state = "off"; on->Show(); on->SetMemo(c->memo); on->Show(); return 0; }
相关文章推荐
- c++ 23种设计模式之桥接者模式
- 23种设计模式4--行为型模式(策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式)
- GoF23种设计模式之行为型模式之备忘录模式
- 23种设计模式的解析与C++实现及源码打包下载
- 23种设计模式C++实例之抽象工厂模式
- 23种设计模式C++实例之组合模式
- 23种设计模式C++实例之访问者模式
- c++ 23种设计模式之适配器模式
- 23种设计模式C++实例之创建者模式
- 设计模式C++实现(12)——备忘录模式
- 23种设计模式4--行为型模式(策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式)
- 23种设计模式C++实例之中介者模式
- C++设计模式之备忘录模式
- 23种设计模式之单例模式(创建型,3 Singleton,c++实现)
- 23种设计模式C++实例之原型模式
- 23种设计模式C++实例之备忘录模式
- 23种设计模式(18)-备忘录模式
- 23种设计模式之装饰器模式(结构型,2 Decorator,c++实现)
- c++23种设计模式
- //c++ 23种设计模式之建造者模式2