Hola a todos,
tengo una clase genérica propia derivada directamente de la clase genérica TLIST y la defino así:
Código Delphi
[-] TMiList< T >=class(TList< T >)
...
end;
hasta aquí todo correcto, el tema es que ahora necesito en un form usar una variable de esta clase genérica, para mas adelante asignarla e intento declararla de la siguiente forma:
Código Delphi
[-] TForm1 = class(TForm)
private
FMiList: TMiList;
public
property MiList:TMiList read FMiList write FMiList;
end;
Y en otra unit distinta tengo el siguiente código donde ya se declaran todos los tipos y se asigna la clase con sus respectivos datos definidos:
Código Delphi
[-]
type
TDataClass = class
...
data:integer;
end;
TMiListData = class(TMiList< TDataClass >)
end;
....
var
Form1:TForm1;
begin
Form1:=TForm1.Create(Application);
Form1.MiList:=TMiListData.Create;
...
end;
El problema lo tengo en el segundo fragmento de código, donde me indica el siguiente error en esta línea
Código Delphi
[-] FMiList: TMiList;
[dcc32 Error] Unit1.pas(18): E2003 Undeclared identifier: 'TMiList'
y el error si lo declaro así entonces es:
Código Delphi
[-] FMiList: TMiList< T >;
[dcc32 Error] Unit1.pas(18): E2003 Undeclared identifier: 'T'
La pregunta es ¿como puedo usar esta clase genérica? por que la clase TList si permite declararla de forma genérica
Gracias y un saludo