Zitat:
Aber, wenn ich es richtig sehe, kann man das, was du machst, genauso gut ohne machen.
Naja, so gesehen kann man alles was man mit Generics machen kann auch ohne machen.
Stell dir diese Klasse vor:
Delphi-Quellcode:
type
TIntegerClass=class(TObject)
private
FData : longint;
function GetData: longint;
procedure SetData(const Value: longint);
function GetVString: string;
public
procedure LoadFromStream(AStream:TFileStream);
procedure SaveToStream(AStream:TFileStream);
property Data : longint read GetData write SetData;
property VString : string read GetVString;
end;
Und das eben als Generic fuer beliebige Typen... Ich will aber nicht den Quellcode duplizieren und einfach nur den typ ersetzen...
Dasselbe bei der Liste
Die IntegerListe waere dann das hier (aber als Generic fuer alle Typen die ich aus dem datenTyp Generic bastel):
Delphi-Quellcode:
type
TIntegerList=class(TObjectList)
private
function GetElement(Index: integer): TIntegerClass;
public
function AddNewElement : TIntegerClass;
procedure LoadFromStream(AStream:TFileStream);
procedure SaveToStream(AStream:TFileStream);
property Element[Index:integer] : TIntegerClass read GetElement;
end;
Das klappt ja auch. Nur die Liste, bzw. jetzt die Element[] property gibt mir noch raetsel auf...