Classe CComContainedObject
Questa classe implementa IUnknown delegando all'oggetto proprietario .IUnknown
Importante
Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.
Sintassi
template<class Base>
class CComContainedObject : public Base
Parametri
Base
La classe, derivata da CComObjectRoot o CComObjectRootEx.
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CComContainedObject::CComContainedObject | Costruttore. Inizializza il puntatore del membro all'oggetto proprietario.IUnknown |
CComContainedObject::~CComContainedObject | Distruttore. |
Metodi pubblici
Nome | Descrizione |
---|---|
CComContainedObject::AddRef | Incrementa il conteggio dei riferimenti sull'oggetto proprietario. |
CComContainedObject::GetControllingUnknown | Recupera l'oggetto proprietario.IUnknown |
CComContainedObject::QueryInterface | Recupera un puntatore all'interfaccia richiesta nell'oggetto proprietario. |
CComContainedObject::Release | Decrementa il conteggio dei riferimenti sull'oggetto proprietario. |
Osservazioni:
ATL usa CComContainedObject
nelle classi CComAggObject, CComPolyObject e CComCachedTearOffObject. CComContainedObject
implementa IUnknown delegando al proprietario dell'oggetto IUnknown
. Il proprietario è l'oggetto esterno di un'aggregazione o l'oggetto per cui viene creata un'interfaccia di disinstallazione. CComContainedObject
chiama CComObjectRootEx
, OuterQueryInterface
OuterAddRef
e OuterRelease
, tutti ereditati tramite Base
.
Gerarchia di ereditarietà
Base
CComContainedObject
Requisiti
Intestazione: atlcom.h
CComContainedObject::AddRef
Incrementa il conteggio dei riferimenti sull'oggetto proprietario.
STDMETHOD_(ULONG, AddRef)();
Valore restituito
Valore che può essere utile per la diagnostica o il test.
CComContainedObject::CComContainedObject
Costruttore.
CComContainedObject(void* pv);
Parametri
Pv
[in] Oggetto proprietario.IUnknown
Osservazioni:
Imposta il m_pOuterUnknown
puntatore membro (ereditato tramite la Base
classe ) su pv.
CComContainedObject::~CComContainedObject
Distruttore.
~CComContainedObject();
Osservazioni:
Libera tutte le risorse allocate.
CComContainedObject::GetControllingUnknown
Restituisce il m_pOuterUnknown
puntatore al membro (ereditato tramite la classe Base) che contiene l'oggetto proprietario.IUnknown
IUnknown* GetControllingUnknown();
Valore restituito
Oggetto proprietario.IUnknown
Osservazioni:
Questo metodo può essere virtuale se Base
ha dichiarato la macro DECLARE_GET_CONTROLLING_UNKNOWN .
CComContainedObject::QueryInterface
Recupera un puntatore all'interfaccia richiesta nell'oggetto proprietario.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
template <class Q>
HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp);
Parametri
iid
[in] Identificatore dell'interfaccia richiesta.
ppvObject
[out] Puntatore al puntatore dell'interfaccia identificato da iid. Se l'oggetto non supporta questa interfaccia, ppvObject è impostato su NULL.
Pp
[out] Puntatore al puntatore dell'interfaccia identificato dal tipo Q
. Se l'oggetto non supporta questa interfaccia, pp è impostato su NULL.
Valore restituito
Valore HRESULT standard.
CComContainedObject::Release
Decrementa il conteggio dei riferimenti sull'oggetto proprietario.
STDMETHOD_(ULONG, Release)();
Valore restituito
Nelle compilazioni di debug restituisce Release
un valore che può essere utile per la diagnostica o il test. Nelle compilazioni non di debug restituisce Release
sempre 0.