System.Rtti.TVirtualInterface.QueryInterface

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function QueryInterface(const IID: TGUID; out Obj): HResult; virtual; stdcall;

C++

HIDESBASE virtual HRESULT __stdcall QueryInterface(const GUID &IID, /* out */ void *Obj);

Propriétés

Type Visibilité  Source Unité  Parent
function public
System.Rtti.pas
System.Rtti.hpp
System.Rtti TVirtualInterface

Description

Crée une référence à l'interface virtuelle.

Une instance de TVirtualInterface représente une implémentation à l'exécution d'une interface Delphi. Pour utiliser une "interface virtuelle", vous devez créer une instance spécifique de TVirtualInterface et obtenir une référence à "l'interface virtuelle". Pour ce faire, vous devez transtyper l'instance de TVirtualInterface à l'interface Delphi correspondante ou utiliser la fonction QueryInterface.

Si l'opération a réussi, la valeur de retour (HRESULT) est S_OK.

QueryInterface incrémente le compteur de références associé à l'instance de TVirtualInterface. Lorsque la valeur du compteur devient 0, l'instance de TVirtualInterface est automatiquement détruite. Vous ne devez jamais détruire une instance de TVirtualInterface directement.

Exemple d'utilisation

Pour Delphi :

if TVirtualInterfaceInstance.QueryInterface(ISpecificInterface, ISpecificInterfaceInstance) = S_OK then
// ...

Pour C++ :

if (virtualInterfaceInstance->QueryInterface(__uuidof(ISpecificInterface), &specificInterfaceInstance) == S_OK)
// ...


Voir aussi