Delphi-Interfaces

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Unterstützung für Delphi-Datentypen und Sprachkonzepte


Der Object Pascal-Compiler behandelt viele Details von Interfaces automatisch. Der Object Pascal-Compiler erhöht automatisch den Referenzzähler, wenn Anwendungscode einen Interface-Zeiger erhält, und dekrementiert diesen Referenzzähler, sobald das Interface den Gültigkeitsbereich verlässt.

In C++Builder stellt die Template-Klasse DelphiInterface in etwa Vergleichbares für C++-Interface-Klassen bereit. Bei Eigenschaften und Methoden in den RAD Studio-Bibliotheken, die Interface-Typen in Object Pascal einsetzen, verwenden die C++-Wrapper ein DelphiInterface, dass mit der zugrunde liegenden Interface-Klasse erstellt wird.

Die DelphiInterface-Konstruktoren, -Kopierkonstruktoren, -Zuweisungsoperatoren und -Destruktoren inkrementieren und dekrementieren Referenzzähler bei Bedarf. DelphiInterface ist aber nicht ganz so komfortabel wie die Compiler-Unterstützung für Interfaces in Object Pascal. Bei anderen Operatoren, die einen Zugriff auf den zugrunde liegenden Interface-Zeiger ermöglichen, wird die Referenzzählung nicht berücksichtigt. Sie müssen eventuell explizit AddRef oder Release aufrufen, um eine korrekte Referenzzählung sicherzustellen.

Themen

Siehe auch