ComPtr, classe
Crée un type de pointeur intelligent représentant l'interface spécifiée par le paramètre de modèle. ComPtr met à jour automatiquement un décompte de références du pointeur d'interface sous-jacent et libère l'interface lorsque le décompte de références atteint zéro.
template <
typename T
>
class ComPtr;
template<
class U
>
friend class ComPtr;
Paramètres
T
L'interface que le ComPtr représente.U
Une classe pour laquelle le ComPtr actuel est un ami. (Le modèle utilisant ce paramètre est protégé.)
Remarques
ComPtr<>déclare un type représentant le pointeur d'interface sous-jacent. Utilisez ComPtr<> pour déclarer une variable puis utilisez l'opérateur d'accès de membre flèche (->) pour accéder à une fonction membre d'interface.
Pour plus d'informations sur les pointeurs intelligents, consultez la sous-section « Pointeurs intelligents COM » de la rubrique COM Coding Practices dans la bibliothèque MSDN.
Membres
Typedefs publics
Nom |
Description |
---|---|
InterfaceType |
Un synonyme du type spécifié par le paramètre de modèle T. |
Constructeurs publics
Nom |
Description |
---|---|
Initialise une nouvelle instance de la classe ComPtr. Les surcharges fournissent un constructeur par défaut, un constructeur de copie, un constructeur de déplacement, ainsi qu'un constructeur de conversion. |
|
Libère une instance de ComPtr. |
Méthodes publiques
Nom |
Description |
---|---|
Retourne un objet ComPtr représentant l'interface identifiée par le paramètre de modèle spécifié. |
|
Retourne un objet ComPtr représentant l'interface identifiée par l'ID d'interface spécifié. |
|
Extrait une référence faible à l'objet actif. |
|
Associe ce ComPtr avec le type d'interface spécifié par le paramètre de type de modèle actuel. |
|
Copie l'interface actuelle ou spécifiée associée à ce ComPtr vers le pointeur de sortie spécifié. |
|
Dissocie ce ComPtr de l'interface qu'il représente. |
|
Récupère un pointeur vers l'interface associée à ce ComPtr. |
|
Récupère l'adresse du membre de données ptr_, contenant un pointeur vers l'interface représentée par ce ComPtr. |
|
Libère l'interface associée à ce ComPtr puis récupère l'adresse du membre de données ptr_, qui contient un pointeur vers l'interface fournie. |
|
Echange l'interface managée par le ComPtr actuel avec l'interface managée par le ComPtr spécifié. |
Méthodes protégées
Nom |
Description |
---|---|
Incrémente le décompte de références de l'interface associée à ce ComPtr. |
|
Effectue une opération Release de COM sur l'interface associée à ce ComPtr. |
Opérateurs publics
Nom |
Description |
---|---|
ComPtr::operator Microsoft::WRL::Details::BoolType, opérateur |
Indique si un ComPtr gère la durée de vie d'une interface ou non. |
Récupère l'adresse du ComPtr actuel. |
|
Assigne une valeur au ComPtr actuel. |
|
Récupère un pointeur vers le type spécifié par le paramètre de modèle actuel. |
|
Indique si deux objets ComPtr sont égaux. |
|
Indique si deux objets ComPtr ne sont pas égaux. |
Données membres protégées
Nom |
Description |
---|---|
Contient un pointeur vers l'interface associée à, et gérée par ce ComPtr. |
Hiérarchie d'héritage
ComPtr
Configuration requise
En-tête : client.h
Espace de noms : Microsoft::WRL