Hallo Leute,
ich möchte gerne zur Laufzeit eine Liste aller Klassen erstellen, welche von einer bestimmten abstrakten Basisklasse ableiten.
Das kann ich bereits mithilfe der
RTTI tun. Nun möchte ich aus dieser Liste später aber dynamisch eine Instanz erzeugen.
Deshalb sollten die Klassen in dieser Liste also nicht abstrakt sein, bzw. keine abstrakten Methoden haben.
Hier auf Stackoverflow habe ich schon eine Lösung dazu gefunden:
How to check if a Delphi class is declared abstract
Leider scheitert es bei mir an der Zeile
Code:
if GetVirtualMethod(c, i) = @_AbstractError then
Denn dazu heißt es
Code:
Unknown identifier _AbstractError
Obwohl ich klar und deutlich in der Datei System.pas die Deklaration und Definition von _AbstractError sehe.
Hat jemand eine Idee wieso? Denn es wundert mich schon, dass auf Stackoverflow niemand dieses Problem damit hatte.
btw: Ich habe die Frage auch hier gestellt:
Check if a class has abstract functions