【发布时间】:2020-03-11 08:21:48
【问题描述】:
在System.Generics.Collections 中,TArray 类型只有类函数。
例如:
class procedure Sort<T>(var Values: array of T); overload; static;
这意味着唯一可接受的语法如下:
var
Arr : TArray<integer>;
begin
SetLength(Arr, 2);
Arr[0] := 5;
Arr[1] := 3;
TArray.Sort<integer>(Arr);
end;
我想定义一个对象的函数,以便使用以下语法对通用数组的值进行排序:
var
Arr : TArray<integer>;
begin
SetLength(Arr, 2);
Arr[0] := 5;
Arr[1] := 3;
Arr.Sort();
end;
【问题讨论】:
-
单元
System中的TArray<T>类型与System.Generics.Collections中的TArray类不同。使用记录助手怎么样?更多详情请查看您自己的Q and the accepted A -
@DelphiCoder:这是一个不同的问题,我想使用泛型数组
-
@Fabrizio 这个问题一点都不清楚,不是吗?
TArray.Sort<T>()不要求您传递通用数组。 -
@DavidHeffernan:同意,这可能很容易被误解......我已经更新了问题
-
这是一个相当长一段时间的开放请求:quality.embarcadero.com/browse/RSP-10336
标签: delphi delphi-xe7 generic-collections