Programmierkurs: Delphi: Pascal: Generics

Aus Wikibooks

Generische Typen, abgekürzt Generics genannt, wurden in Delphi 2009 eingeführt. Mittels Generics kann Quellcode noch wiederverwendbarer gestalltet werden.

Ein gutes Beispiel hierzu sind Listen. Früher musste man, wenn man eine typsichere Umsetzung ohne Typcasts haben wollte, für jeden Datentyp eine eigene Listenklasse entwickeln, da beispielsweise die Parameter zum Hinzufügen von Elementen dem Datentyp der Liste entsprechen muss.

Mit Generics kann man das so formulieren, dass man für verschiedene Typen nur eine generische Liste programmieren muss und erst wenn das konkrete Listenobjekt erzeugt wird entschieden wird, von welchem Datentyp die Liste ist.

Delphi ermöglicht es nicht nur generische Klassen selbst zu schreiben, sondern bringt mit der Unit Generics.Collections bereits diverse generische Listenklassen wie TList<T>, TStack<T> und weitere mit. Das <T> ist dabei das generische Elemtent, welches zum Zeitpunkt der Deklaration des Objektes und des Erzeugens des Objektes durch den tatsächlichen Typ ersetzt wird.