Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette classe implémente IUnknown en déléguant à l’objet IUnknownpropriétaire.
Important
Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s’exécutent dans Windows Runtime.
Syntaxe
template<class Base>
class CComContainedObject : public Base
Paramètres
Base
Votre classe, dérivée de CComObjectRoot ou CComObjectRootEx.
Membres
Constructeurs publics
| Nom | Description |
|---|---|
| CComContainedObject ::CComContainedObject | Constructeur . Initialise le pointeur membre vers l’objet IUnknownpropriétaire. |
| CComContainedObject ::~CComContainedObject | Destructeur. |
Méthodes publiques
| Nom | Description |
|---|---|
| CComContainedObject ::AddRef | Incrémente le nombre de références sur l’objet propriétaire. |
| CComContainedObject ::GetControllingUnknown | Récupère l’objet propriétaire.IUnknown |
| CComContainedObject ::QueryInterface | Récupère un pointeur vers l’interface demandée sur l’objet propriétaire. |
| CComContainedObject ::Release | Décrémente le nombre de références sur l’objet propriétaire. |
Notes
ATL utilise CComContainedObject dans les classes CComAggObject, CComPolyObject et CComCachedTearOffObject. CComContainedObjectimplémente IUnknown en déléguant à l’objet IUnknownpropriétaire. (Le propriétaire est soit l’objet externe d’une agrégation, soit l’objet pour lequel une interface de déchirure est créée.) CComContainedObject OuterQueryInterfaceappelle CComObjectRootEx, OuterAddRefet OuterRelease, tous hérités par Base.
Hiérarchie d'héritage
Base
CComContainedObject
Spécifications
En-tête : atlcom.h
CComContainedObject ::AddRef
Incrémente le nombre de références sur l’objet propriétaire.
STDMETHOD_(ULONG, AddRef)();
Valeur de retour
Valeur qui peut être utile pour les diagnostics ou les tests.
CComContainedObject ::CComContainedObject
Constructeur .
CComContainedObject(void* pv);
Paramètres
Pv
[in] L’objet propriétaire est IUnknown.
Notes
Définit le m_pOuterUnknown pointeur membre (hérité par le biais de la Base classe) sur pv.
CComContainedObject ::~CComContainedObject
Destructeur.
~CComContainedObject();
Notes
Libère toutes les ressources allouées.
CComContainedObject ::GetControllingUnknown
Retourne le m_pOuterUnknown pointeur membre (hérité par le biais de la classe Base ) qui contient l’objet IUnknownpropriétaire.
IUnknown* GetControllingUnknown();
Valeur de retour
L’objet propriétaire est IUnknown.
Notes
Cette méthode peut être virtuelle si Base elle a déclaré la macro DECLARE_GET_CONTROLLING_UNKNOWN .
CComContainedObject ::QueryInterface
Récupère un pointeur vers l’interface demandée sur l’objet propriétaire.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
template <class Q>
HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp);
Paramètres
iid
[in] Identificateur de l'interface demandée.
ppvObject
[out] Pointeur vers le pointeur d’interface identifié par iid. Si l’objet ne prend pas en charge cette interface, ppvObject a la valeur NULL.
pp
[out] Pointeur vers le pointeur d’interface identifié par type Q. Si l’objet ne prend pas en charge cette interface, pp a la valeur NULL.
Valeur de retour
Valeur HRESULT standard.
CComContainedObject ::Release
Décrémente le nombre de références sur l’objet propriétaire.
STDMETHOD_(ULONG, Release)();
Valeur de retour
Dans les builds de débogage, Release retourne une valeur qui peut être utile pour les diagnostics ou les tests. Dans les builds non debug, Release retourne toujours 0.