Я пытаюсь добавить метод Append
к типу System.Generics.Collections.TArray
.
unit uMyArray;
interface
uses
System.Generics.Collections;
type
TArray = class(System.Generics.Collections.TArray)
public
class procedure Append<T>(var AValues: array of T; const AItem: T); static;
end;
implementation
class procedure TArray.Append<T>(var AValues: array of T; const AItem: T);
begin
SetLength(AValues, Length(AValues) + 1);
AValues[Length(AValues) - 1] := AItem;
end;
end.
При компиляции я получаю следующую ошибку в строке SetLength
:
[Ошибка dcc32] uMyArray.pas (18): E2008 Несовместимые типы