撤销和重做(Undo和Redo)的C完美实现.docx

撤销和重做(Undo和Redo)的C完美实现.docx

撤销和重做(Undo和R?edo)的C++完美实现?????? 经过一年多的?时间的摸索,终于找到了一?种比较完美的?撤销和重做(Undo和R?edo)的C++实现方案,因为现在很多?的应用程序都?需要这种功能?,所以我将我的?经历写出来让?大家分享,同时也能够让?更多的人帮助?我来更加完善?这种架构,同时也能够让?更多的人能够?利用这种架构?更好的完成它?的程序。这种架构充分?利用了STL?的容器和算法?来简化代码,因此有着比较?高的正确性和?可读性。??? ?? 在解析我的架?构之前先分析?一下(我所知道的)目前存在的一?些实现撤销和?重做的方案的?优缺点。当前存在的撤?销和重做的方?案主要是:撤销和重做的?方案优点和缺?点撤销和重做方?案优点和缺点将整个应用程?序的状态序列?化到文件撤销和重做的?步骤数量一般?不多,最常见的是只?能够撤销和重?做一步,因为步骤多了?会占用非常多?的磁盘空间,同时撤销和重?做的操作消耗?时间也非常多?,但是代码组织?却非常简单?自定义分配器?管理内存池的?方法?有着非常复杂?的内存分配算?法,代码不容易理?解,使用也有点不?方便,方法和上面的?序列化方案类?似,只不过序列化?到了内存中,代码组织也非?常简单仿函数保存反?操作的方法用仿函数保留?每一步操作所?对应的反操作?,虽然占用的内?存空间不大,操作消耗的时?间也不多,但是为每一步?操作都必

文档评论(0)

1亿VIP精品文档

相关文档