Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
Delphi 12 Athens
|
AW: Generic class <T> , wie füge ich konkrete Daten ein ?
9. Jan 2024, 10:50
Wenn du mit T in der generischen Klasse etwas machen willst, dann muss T so beschrieben sein, dass diese Aktionen dort möglich sind. Dazu gibt es sogenannte Constraints. Mit <T: class>
schränkt man die Verwendung auf Klassen ein, kann dann allerdings auch z.B. Free
for eine Variable vom Typ T aufrufen. Mit <T: constructor>
muss ein später übergebenes T einen parameterlosen Konstruktor haben, den man dann aber auch generisch aufrufen kann. Mit <T: TComponent>
kann man alles machen, was TComponent so bietet. Bei Records <T: record>
ist das wegen der fehlenden Vererbung halt etwas eingeschränkt.
Generics sind nicht für jeden Anwendungsfall geeignet bzw. nutzbar. Es ist also gut möglich, dass du da auf dem Holzweg bist.
|