您的位置:首页 > 其它

备忘录模式

2016-04-02 14:41 155 查看
定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态

//设计备忘录三大步骤

//1.设计记录的节点,存储记录,//记录鼠标,键盘的状态

//2.设计记录的存储,vector,list,map,set,链表,图,数组,树

//3.操作记录的类,记录节点状态,设置节点状态,显示状态,0.1秒记录一下

//备忘录的节点,

class Memo

{

public:

string state;

Memo(string state) //记录当前的状态,

{

this->state = state;

}

};

class Originator//类的包含备忘录的节点

{

public:

string state;

void setMemo(Memo *memo)

{

state = memo->state;

}

Memo *createMemo()

{

return new Memo(state);

}

void show()

{

cout << state << endl;

}

};

//备忘录的集合

class Caretaker

{

public:

vector<Memo *> memo;

void save(Memo *memo)

{

(this->memo).push_back(memo);

}

Memo *getState(int i)

{

return memo[i];

}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: