Einzelnen Beitrag anzeigen

Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#39

Re: Basisklasse und davon abgeleitet drei Standardklassen

  Alt 9. Okt 2007, 18:48
Wie kommt denn die TBasisklasse in den FHelper? Du kannst nur mit Interfaces arbeiten, die nicht nil sind. Folglich muss der Konstruktor von TEditklasse und TLabelklasse überschrieben werden.
Zur Sache mit dem Cast: Da habe ich auch schon mal dran gehangen. Der Trick ist, dass der internen Cast-Funktion eine GUID übergeben werden muss. Verpasse ITestInterface also eine GUID. Bei Interfaces musst du übrigens zwingend mit dem as-Cast arbeiten, der function-syle-Cast führt fast zwingend zur Zugriffsverletzung, da in der falschen VMT die Funktion gesucht wird (ich will jetzt nicht mit den Interna langweilen, aber wer will, kann ja mal schauen, wie Interface-Methoden eigentlich aufgerufen werden).
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat