_com_ptr_t, classe
Section spécifique à Microsoft
Un objet _com_ptr_t encapsule un pointeur d'interface COM et est appelé un pointeur « intelligent ». Cette classe de modèle gère l'allocation et la désallocation des ressources via des appels de fonction aux fonctions membres IUnknown : QueryInterface, AddRef et Release.
Un pointeur intelligent est généralement référencé par la définition de typedef fournie par la macro _COM_SMARTPTR_TYPEDEF. Cette macro accepte un nom d'interface et l'IID et déclare une spécialisation de _com_ptr_t avec le nom de l'interface plus un suffixe Ptr. Par exemple :
_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));
déclare la spécialisation _com_ptr_t IMyInterfacePtr.
Un ensemble de modèles de fonction, non membres de cette classe de modèle, prend en charge les comparaisons avec un pointeur intelligent à droite de l'opérateur de comparaison.
Construction
Construit un objet _com_ptr_t. |
Opérations de bas niveau
Appelle la fonction membre AddRef de IUnknown sur le pointeur d'interface encapsulé. |
|
Encapsule un pointeur d'interface brut du type de ce pointeur intelligent. |
|
Crée une nouvelle instance d'un objet avec un CLSID ou ProgID. |
|
Extrait et retourne le pointeur d'interface encapsulé. |
|
S'attache à une instance existante d'un objet doté d'un CLSID ou ProgID. |
|
Retourne le pointeur d'interface encapsulé. |
|
Appelle la fonction membre QueryInterface de IUnknown sur le pointeur d'interface encapsulé. |
|
Appelle la fonction membre Release de IUnknown sur le pointeur d'interface encapsulé. |
Opérateurs
Assigne une nouvelle valeur à un objet _com_ptr_t existant. |
|
Comparent l'objet pointeur intelligent avec un autre pointeur intelligent, un pointeur d'interface brut ou NULL. |
|
Récupérez le pointeur d'interface COM encapsulé. |
Configuration requise
En-tête : comip.h
Bibliothèque : comsuppw.lib ou comsuppwd.lib (voir /Zc:wchar_t (wchar_t est un type natif) pour plus d'informations)