您的位置:首页 > 编程语言 > C语言/C++

C语言设计模式:备忘录

2013-02-15 19:01 309 查看
备忘录模式主要目的用于支持undo操作。

考虑到C是一种结构化语言,撤销操作往往在每个返回处理进行回滚,或者通过goto出口统一释放资源。

如果将回滚操作对象化,即勉强可看为该模式的一种实现。

void func()

{

ret = do_sth1() & rollback_reg(sth1);

if (ok != ret) {

rollback();

return ret;

}

ret = do_sth2() & rollback_reg(sth2);

if (ok != ret) {

rollback();

return ret;

}

ret = do_sth3() & rollback_reg(sth3);

if (ok != ret) {

rollback();

return ret;

}

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