摘要: 1.结构体不能用判断符号==判断是否为null,结构体是值类型,不论采用new与否,结构体中的值类型都已经赋了初值。2.整数相除:a=120;b=7;c=a/b;结果c=17如果想得到double型需要将a先转换到double,写成c=(double)a/b; 阅读全文
posted @ 2013-07-30 22:32 太一吾鱼水 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 1. redo和undo的实现 知道执行了什么命令,影响了那些数据 终止条件和状态2. 这里我犯了个错误,其实我根本不需要知道是执行的什么命令,对于绘图系统,我只需知道对数据产生了那些影响。撤销和重做其实都是针对数据(几何对象)来说的。所有这里只需要在操作(添加几何对象、删除几何对象、修改几何对象、增加节点、删除节点、移动节点等)时另外引一条线,就是UndoRedoBuffer对象,他是一个List,其实如果是栈则更好,用它记录操作影响的数据。注意是操作影响的数据,和上面所说的操作是两个概念。抽象了一个操作影响数据的EditCommandBase类,具体子类有:添加影响数据类,删除影响数据.. 阅读全文
posted @ 2013-07-30 21:49 太一吾鱼水 阅读(419) 评论(0) 推荐(0) 编辑