摘要: functionTSuperAvlTree.Search(constk:SOString;st:TSuperAvlSearchTypes):TSuperAvlEntry;varcmp,target_cmp:integer;match_h,h:TSuperAvlEntry;ha:Cardinal;beginha:=TSuperAvlEntry.Hash(k);match_h:=nil;h:=FRoot;if(stLessinst)thentarget_cmp:=1elseif(stGreaterinst)thentarget_cmp:=-1elsetarget_cmp:=0;while(h< 阅读全文
posted @ 2011-02-25 10:59 D10.天地弦 阅读(973) 评论(0) 推荐(0) 编辑
摘要: 在superObject中添加排序类型type //add By Mofen TSOSortMode = (sosmDefault {默认的方式}, sosmAdd {添加的顺序}, sosmASC {升序}, sosmDesc {降序});添加全局设置方法var nowSortMode: TSOSortMode = sosmDefault;//设置排序模式 Mofenprocedure SetSOSortMode(pvSortMode: TSOSortMode);begin nowSortMode := pvSortMode;end;需要改造的类主要为TSuperAvlTree其中需要改造的 阅读全文
posted @ 2011-02-25 10:49 D10.天地弦 阅读(2021) 评论(1) 推荐(0) 编辑
摘要: 一直有个想法。SuperObject这么好用的Json简析类,序列化出来的Json排序是乱的。有时候想用SuperObject做保存树数据。这样一来排序都是乱乱的也就放弃了,这几天想改造一下SuperObject类。将改造过程记下。以便以后查阅。最初想法增加ISuperObject属性SortMode:Integer排序方式(0:默认方式, 1:添加顺序, 2:升序)缺点:因为每个值都是一个TSuperObject对象。如果每个TSuperObject添加SortMode属性, 考虑的地方太多。开始认为默认的方式是安装降序排列的,后来深入代码发现通过下面的方法计算key的值再进行比较得出进行排 阅读全文
posted @ 2011-02-25 10:36 D10.天地弦 阅读(2314) 评论(0) 推荐(0) 编辑