Delphi中TStringlist与TStrings继承关系
TObject
|
TPersistent
|
TStrings
|
TStringList
TList与其他两个没什么联系
TObject
|
TList
具体应用中要分析实际需求选择,一般如果都是处理字符串列表,笔者建议用Delphi中的TStringList对应C#中ArrayList,可以满足大部分开发需求,主要是用起来简单,当然Delphi中的TList才是C#中ArrayList的对等类,但是需要使用复杂的指针操作,功能虽然强大,但是容易出错。
C#代码:
static ArrayList al_status = new ArrayList();
Delphi代码:
var
al_status:TStringList;
begin
al_status:=TStringList.Create;
end;
如果上面还是无法满足开发需求,Dellphi也可以自己实现C#中ArrayList:
function TTelescope.Get_SupportedActions: OleVariant;
var
capacity: Integer;
item:Variant;
dotNetArrayList:Variant;
begin
{ Create object }
dotNetArrayList := CreateOleObject('System.Collections.ArrayList');
{ Add an element }
dotNetArrayList.Add('Un élément chaîne');
item := dotNetArrayList.Item(0);
Result:=dotNetArrayList;
end;