当我发现像这样的构造实际编译并产生所需结果时,这只是偶然的机会:
var
Arr: TArray<Integer>;
begin
Arr := TArray<Integer>.Create(100, 101, 102);
end;
我只在Delphi XE中测试过它,但它也可以在旧版本中使用。这是在某处记录的吗?
答案 0 :(得分:13)
它记录在language guide。
中答案 1 :(得分:10)
它是以下的通用版本,可以追溯到Delphi 2007:
type
TIntArray = array of Integer;
var
MyIntArray: TIntArray;
begin
MyIntArray := TIntArray.Create(0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
...
end;
这最终是一个能够在不知道大小的情况下初始化数组的解决方案。