什么是备忘录模式?
在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样就可以将以后的对象状态恢复到先前保存的状态。
我们在编程的时候,经常需要保存对象的中间状态,当需要的时候,可以恢复到这个状态。比如,我们使用Eclipse进行编程时,假如编写失误(例如不小心误删除了几行代码),我们希望返回删除前的状态,便可以使用Ctrl+Z来进行返回。这时...
分类:
其他好文 时间:
2015-07-27 00:26:31
阅读次数:
146
1.Memento 模式的关键是在不破坏封装的前提下,捕获并保存一个类的内部状态,这样就可以利用该保存的状态实施恢复操作。2.Memento 模式结构图3.实现 1 #ifndef _MEMENTO_H_ 2 #define _MEMENTO_H_ 3 4 #include 5 using ...
分类:
其他好文 时间:
2015-07-23 15:29:02
阅读次数:
152
//备忘录模式定义://在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。//这样以后就能够将该对象恢复到原先保存的状态//实例:測试两种方案。两种方案在第一阶段的过程是同样的,第二阶段是不同的//实例代码//备忘录对象的窄接口public interface FlowAM...
分类:
其他好文 时间:
2015-07-21 21:55:44
阅读次数:
142
定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态类型:行为类类图:class Memento{public: Memento(int level,int life,int time):m_level(level),m_li...
分类:
其他好文 时间:
2015-07-18 18:26:06
阅读次数:
97
//Memento记忆模式。
#include
#include
using namespace std;
class Memento;
class Originator
{
public:
Originator(char *s = "")
{
_str = new char[100];
strcpy(_st...
分类:
其他好文 时间:
2015-07-06 23:31:54
阅读次数:
260
备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。
适用场合:比较适合用于功能比较复杂,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分时。
首先定义一个Originator(发起人)类public class Originator { private String state;/...
分类:
其他好文 时间:
2015-06-27 16:25:29
阅读次数:
129
1.意图在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态。2.别名Token3.动机有时候有必要记录一个对象的内部状态。为了允许用户取消不确定的操作或从错误中恢复过来,需要实现检查点和取消机制,而要实现这些机制,你必须事先将状态信息保存在某处,这样才能是对象恢复到他们先前的状态。4.适用性以下情况使用Memento模式:
必需保存一...
分类:
其他好文 时间:
2015-06-25 19:40:00
阅读次数:
140
备忘录模式就是能够存储当前状态,类似于玩游戏的时候可以不断的读档,同时在玩了新的游戏的时候,又可以更新到档案里。
#include
#include
using namespace std;
//需保存的信息
class Memento
{
public:
int m_vitality; //生命值
int m_attack; //进攻值
in...
分类:
编程语言 时间:
2015-06-18 22:17:28
阅读次数:
213
备忘录模式:
在不破换封装性的前提下,捕获一个对象的内部状态并将这个状态保存到对象外部,这样这个对象之后可以恢复到保存的状态。
Without violating encapsulation, capture and externalize an object’s internal state so that the object can be restored to this state la...
分类:
其他好文 时间:
2015-06-09 17:13:49
阅读次数:
136
又名快照模式或者token模式
备忘录对象是一个用来存储另一个对象内部状态的快照(snapshot)的对象。备忘录模式用意是在不破坏封装的条件下,将下一个对象的状态捕捉(capture),并外部化(externalize),存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。备忘录模式常常与命令模式和迭代子模式一起使用。
备忘录模式涉及的角色:备忘录角色、发起人角色、负责人角色...
分类:
编程语言 时间:
2015-05-18 09:11:54
阅读次数:
193