CComContainedObject 類別
這個類別藉 由委派給擁有者物件的 IUnknown
來實作 IUnknown 。
重要
這個類別及其成員不能用於在Windows 執行階段中執行的應用程式。
語法
template<class Base>
class CComContainedObject : public Base
參數
基地
您的類別衍生自 CComObjectRoot 或 CComObjectRootEx 。
成員
公用建構函式
名稱 | 描述 |
---|---|
CComContainedObject::CComContainedObject | 建構函式。 初始化擁有者物件的 IUnknown 成員指標。 |
CComContainedObject::~CComContainedObject | 解構函式。 |
公用方法
名稱 | 描述 |
---|---|
CComContainedObject::AddRef | 遞增擁有者物件的參考計數。 |
CComContainedObject::GetControllingUnknown | 擷取擁有者物件的 IUnknown 。 |
CComContainedObject::QueryInterface | 擷取擁有者物件上要求的介面指標。 |
CComContainedObject::Release | 遞減擁有者物件的參考計數。 |
備註
ATL 在 CComContainedObject
CComAggObject、 CComPolyObject 和 CComCachedTearOffObject 類別 中使用。 CComContainedObject
藉 由委派給擁有者物件的 IUnknown
來實作 IUnknown 。 (擁有者是匯總的外部物件,或是正在建立卸載介面的物件。 CComContainedObject
會呼叫 CComObjectRootEx
的 OuterQueryInterface
、 OuterAddRef
和 OuterRelease
,全都是透過 Base
繼承而來。
繼承階層架構
Base
CComContainedObject
需求
標頭: atlcom.h
CComContainedObject::AddRef
遞增擁有者物件的參考計數。
STDMETHOD_(ULONG, AddRef)();
傳回值
對於診斷或測試而言可能很有用的值。
CComContainedObject::CComContainedObject
建構函式。
CComContainedObject(void* pv);
參數
光伏
[in]擁有者物件的 IUnknown
。
備註
將 m_pOuterUnknown
成員指標 (透過 Base
類別繼承) 設定為 pv 。
CComContainedObject::~CComContainedObject
解構函式。
~CComContainedObject();
備註
釋放所有已配置的資源。
CComContainedObject::GetControllingUnknown
傳 m_pOuterUnknown
回擁有者物件的 成員指標(透過 基 類繼承)。 IUnknown
IUnknown* GetControllingUnknown();
傳回值
擁有者物件的 IUnknown
。
備註
如果 Base
已宣告DECLARE_GET_CONTROLLING_UNKNOWN 宏,這個方法可能是虛擬的 。
CComContainedObject::QueryInterface
擷取擁有者物件上要求的介面指標。
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
template <class Q>
HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp);
參數
Iid
[in] 所要求介面的識別碼。
ppvObject
[out]由 iid 識別 之介面指標的指標。 如果物件不支援這個介面, ppvObject 會設定為 Null。
Pp
[out]型別 Q
所識別之介面指標的指標。 如果物件不支援這個介面, pp 會設定為 Null。
傳回值
標準 HRESULT 值。
CComContainedObject::Release
遞減擁有者物件的參考計數。
STDMETHOD_(ULONG, Release)();
傳回值
在偵錯組建中, Release
傳回可能對診斷或測試很有用的值。 在非偵錯組建中, Release
一律會傳回 0。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應