Forum: Object-Pascal / Delphi-Language
Delphi
by Khabarakh,
3. Apr 2010
TAufgabe(TClass(x).Create) (mit x : TClass := TAufgabe) würde dir bereits TAufgabe zurückliefern, aber nur den Konstruktor von TObject aufrufen. Um TAufgabe.Create aufzurufen, brauchen wir TAufgabeClass(x).Create.
Das wäre einmal das statische Binden des richtigen Konstruktors. Auf die unbekannten abgeleiteten Klassen können wir aber schlecht casten, also brauchen wir ab TAufgabe einen...
Forum: Object-Pascal / Delphi-Language
Delphi
by Khabarakh,
3. Apr 2010
Kurz skizziert:
type
TAufgabe = class
public
constructor Create; virtual; //!
...
TAufgabeClass = class of TAufgabe;