Dellphi实现C#中ArrayList数组列表以及Delphi中的TSTRINGS、TSTRINGLIST、TLIST对应关系

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;

猜你喜欢

转载自blog.csdn.net/xyzhan/article/details/87345842