16,742
社区成员
发帖
与我相关
我的任务
分享TSOList = class
private
FList: TList;
public
procedure Add(so: Tso);
procedure Delete(i: integer);
procedure Insert(i: integer;so: TSO);
procedure Clear;
contructor Create;
destructor Destroy; override;
end;
constructor TSOList.Create;
begin
FList := TList.Create;
end;
destructor TSOList.Destroy;
begin
FList.Free;
inherited;
end;
procedure TSOList.Add(so: TSO);
begin
FList.Add(@so);
//这里相当于一个代理操作,下面几个类似,我便不重复叙述了
end;
这种方法我用了很久,虽说有些麻烦,但还是很安全。当你要用的数据结构并不多时,可以考虑
type
Tso=packed record
jiu:Integer;
zu:Integer;
mu:Integer;
sn:Tsn;
end;
type
Tsn=packed record
i:Integer;
ng:Integer;
sng:Integer;
mng:Integer;
je:Integer;
wi:Integer;
di:Integer;
mi:string;
end;
比如这样的结构体 我想能跟泛型的list一样 可以增加 删除 清理 排序之类的操作