System.Rtti.TRawVirtualClass.FindInterface

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function FindInterface(IID: TGUID): Pointer;

C++

void * __fastcall FindInterface(const GUID &IID);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
System.Rtti.pas
System.Rtti.hpp
System.Rtti TRawVirtualClass


Beschreibung

Sucht den Interface-Zeiger für die angegebene GUID und gibt ihn zurück.

FindInterface gibt nur Zeiger auf Interfaces zurück, die eigentlich virtuelle, zu dieser Klasse hinzugefügte Interfaces sind. FindInterface folgt nicht der vollen Semantik von QueryInterface, wobei ein Delegat auf geerbten Versionen vorhanden ist, wenn das Interface nicht lokal gefunden wird. Dieses Interface stellt einen Sonderfall dar, weil es den Rohzeiger des Interface zurückgibt, ohne AddRef für das Interface aufzurufen. Diese Sonderoperation ist nur in extremen Fällen nützlich. Da die Methode AddRef für den Zeiger nicht ausgeführt wird, müssen Sie mit der Verwendung des Ergebnisses sehr vorsichtig sein, um die versehentliche Freigabe eines Objekts zu vermeiden.

FindInterface gibt nil zurück, wenn das Interface nicht lokal gefunden werden kann.

Siehe auch