Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
Az aktív sablontár (ATL) továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
Ez az osztály úgy implementálja az IUnknown parancsot , hogy a tulajdonosobjektumra IUnknowndelegál.
Fontos
Ez az osztály és tagjai nem használhatók a Windows futtatókörnyezetben futó alkalmazásokban.
Szemantika
template<class Base>
class CComContainedObject : public Base
Paraméterek
Base
A CComObjectRoot vagy a CComObjectRootEx osztályból származik.
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
| CComContainedObject::CComContainedObject | A konstruktor. Inicializálja a tagmutatót a tulajdonosobjektumhoz IUnknown. |
| CComContainedObject::~CComContainedObject | A destruktor. |
Nyilvános módszerek
| Név | Description |
|---|---|
| CComContainedObject::AddRef | Növeli a tulajdonos objektum referenciaszámát. |
| CComContainedObject::GetControllingUnknown | Lekéri a tulajdonosobjektumot IUnknown. |
| CComContainedObject::QueryInterface | A tulajdonosobjektumon kért felületre mutató mutatót kér le. |
| CComContainedObject::Release | A tulajdonosobjektum hivatkozásainak száma csökken. |
Megjegyzések
Az ATL a CComAggObject, a CComPolyObject és a CComCachedTearOffObject osztályban használjaCComContainedObject.
CComContainedObject az IUnknown implementálása a tulajdonos objektumának IUnknowndelegálásával. (A tulajdonos vagy egy összesítés külső objektuma, vagy az az objektum, amelyhez egy szakadási felület jön létre.) CComContainedObject hívások CComObjectRootEx, OuterQueryInterfaceOuterAddRefés OuterRelease, mind öröklött keresztül Base.
Öröklési hierarchia
Base
CComContainedObject
Requirements
Fejléc: atlcom.h
CComContainedObject::AddRef
Növeli a tulajdonos objektum referenciaszámát.
STDMETHOD_(ULONG, AddRef)();
Visszaadott érték
A diagnosztikához vagy teszteléshez hasznos érték.
CComContainedObject::CComContainedObject
A konstruktor.
CComContainedObject(void* pv);
Paraméterek
Pv
[in] A tulajdonos objektuma IUnknown.
Megjegyzések
m_pOuterUnknown A tagmutatót (az Base osztályon öröklődve) pv értékre állítja.
CComContainedObject::~CComContainedObject
A destruktor.
~CComContainedObject();
Megjegyzések
Felszabadítja az összes lefoglalt erőforrást.
CComContainedObject::GetControllingUnknown
Visszaadja a m_pOuterUnknown tulajdonosobjektumot IUnknowntartalmazó tagmutatót (amely az Alap osztályon öröklődik).
IUnknown* GetControllingUnknown();
Visszaadott érték
A tulajdonos objektuma IUnknown.
Megjegyzések
Ez a módszer akkor lehet virtuális, ha Base deklarálta a DECLARE_GET_CONTROLLING_UNKNOWN makrót.
CComContainedObject::QueryInterface
A tulajdonosobjektumon kért felületre mutató mutatót kér le.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
template <class Q>
HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp);
Paraméterek
iid
[in] A kért felület azonosítója.
ppvObject
[kifelé] Az iid által azonosított felületmutatóra mutató mutató. Ha az objektum nem támogatja ezt az interfészt, a ppvObject értéke NULL.
Pp
[kifelé] Az illesztőmutatóra mutató mutató, amely típus Qszerint van azonosítva. Ha az objektum nem támogatja ezt az interfészt, a pp értéke NULL.
Visszaadott érték
Standard HRESULT érték.
CComContainedObject::Release
A tulajdonosobjektum hivatkozásainak száma csökken.
STDMETHOD_(ULONG, Release)();
Visszaadott érték
A hibakeresési buildekben olyan értéket ad vissza, Release amely hasznos lehet a diagnosztika vagy a tesztelés során. A nem hibakeresési buildekben Release mindig 0 értéket ad vissza.