【发布时间】:2018-01-24 12:58:15
【问题描述】:
我有一堆重载的方法,它们都获取某种类型的数组作为参数,并从该数组中返回一个随机值:
function GetRandomValueFromArray(Arr: array of String): String; overload;
begin
Result := Arr[Low(Arr) + Random(High(Arr) + 1)];
end;
function GetRandomValueFromArray(Arr: array of Integer): Integer; overload;
begin
Result := Arr[Low(Arr) + Random(High(Arr) + 1)];
end;
等等
如何使用泛型为任何类型的数组创建单一方法?像这样的东西(在 Delphi XE7 中无法编译):
function GetRandomValueFromArray(Arr: TArray<T>): <T>;
感谢任何意见,因为我阅读了大多数关于泛型的问题,但我仍然不清楚这是否可能?
【问题讨论】:
标签: delphi generics delphi-xe7