Einzelnen Beitrag anzeigen

Apollonius

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

Re: Interface Problem, implementation von mehreren Interface

  Alt 28. Aug 2007, 20:54
Interfaces müssen mit as umgewandelt werden! Dabei wird implizit QueryInterface aufgerufen. Das ist nötig, da ein Interface nur ein Zeiger auf eine virtual method table (VMT) ist, die Zeiger auf alle von dem entsprechenden Interface geforderten Methoden enthält. Und deshalb kann nicht mit dem gecasteten Interfacezeiger (=zeigt immer noch auf eine ISomeinterface-VMT) die Methode set_name aufgerufen werden, die nicht in ISomeinterface enthalten ist.
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