CComCachedTearOffObject クラス
このクラスは、ティアオフ インターフェイスの IUnknown を実装します。
template <
class contained
>
class CComCachedTearOffObject : public IUnknown,
public CComObjectRootEx< contained::_ThreadModel::ThreadModelNoCS >
パラメーター
- contained
CComTearOffObjectBase から派生したクラスのティアオフ インターフェイス、およびサポートへのティアオフのオブジェクトを関連付けます。
メンバー
パブリック コンストラクター
名前 |
説明 |
---|---|
コンストラクターです。 |
|
デストラクターです。 |
パブリック メソッド
名前 |
説明 |
---|---|
CComCachedTearOffObject のオブジェクトの参照カウントをインクリメントします。 |
|
m_contained::FinalConstruct (ティアオフ クラスのメソッド) を呼び出します。 |
|
m_contained::FinalRelease (ティアオフ クラスのメソッド) を呼び出します。 |
|
CComCachedTearOffObject のオブジェクトの IUnknown は、のティアオフ クラス (クラス) containedの要求されたインターフェイスへのポインターを返します。 |
|
参照カウントが 0 の場合 CComCachedTearOffObject のオブジェクトの参照カウントをデクリメントし、破棄します。 |
パブリック データ メンバー
名前 |
説明 |
---|---|
アプリケーションのティアオフ containedクラス (クラス) から派生 CComContainedObject のオブジェクト。 |
解説
ティアオフ インターフェイスのCComCachedTearOffObject の 実装 IUnknown。 このクラスは CComTearOffObject とオーナー オブジェクトの IUnknown とは別に CComCachedTearOffObject に独自の IUnknownがあることとは異なります (所有者は、ティアオフが作成されているオブジェクトです。 CComCachedTearOffObject は、参照カウントがゼロの場合 IUnknown の独自の参照カウントを保持し、削除します。 ただし、ティアオフ インターフェイスに対してもただせば、オーナー オブジェクトの IUnknown の参照カウントがインクリメントします。
ティアオフを実装する CComCachedTearOffObject のオブジェクトが既にインスタンス化され、ティアオフ インターフェイスが再びにただされれば、CComCachedTearOffObject の同じオブジェクトが再利用されます。 これに対し CComTearOffObject によって実装されるティアオフ インターフェイスがオーナー オブジェクトを経由するには、もう一度ただされれば、別の CComTearOffObject がインスタンス化されます。
所有者クラスは FinalRelease を実装し、参照カウントをデクリメントします CComCachedTearOffObjectのキャッシュされた IUnknown の [リリース] を呼び出す必要があります。 これにより CComCachedTearOffObject の FinalRelease が呼び出され、ティアオフを削除します。
継承階層
CComObjectRootBase
IUnknown
CComCachedTearOffObject
必要条件
ヘッダー : atlcom.h