次の方法で共有


ComPtr クラス

テンプレート パラメーターによって指定されたインターフェイスを表す スマート ポインターの 型を作成します。ComPtr は自動的に参照カウントがゼロになると、基のインターフェイス ポインターの参照カウントを保持し、インターフェイスを解放します。

template <
   typename T
>
class ComPtr;

template<
   class U
>
friend class ComPtr;

パラメーター

  • T
    ComPtr が表すインターフェイス。

  • U
    現在の ComPtr がフレンドであるクラス。(このパラメーターを使用するテンプレートが保護されます)。

解説

ComPtr<> は基のインターフェイス ポインターを表す型を宣言します。変数を宣言し、インターフェイスのメンバー関数にアクセスするには、矢印のメンバー アクセス演算子 (->)を使用するために ComPtr<> を使用します。

スマート ポインターに関する詳細については、 MSDN のライブラリのトピックの 「 COM Coding Practices COM スマート ポインター」のサブセクションを参照してください。

メンバー

BR244983.collapse_all(ja-jp,VS.110).gifパブリック typedef

名前

Description

InterfaceType

T テンプレート パラメーターで指定される型のシノニム。

BR244983.collapse_all(ja-jp,VS.110).gifパブリック コンストラクター

名前

Description

ComPtr::ComPtr コンストラクター

Intializes ComPtr クラスの新しいインスタンス。オーバーロードは既定の処理を提供し、変換、およびコンストラクターのコピー、移動します。

ComPtr::~ComPtr デストラクター

Deinitializes ComPtr のインスタンス。

BR244983.collapse_all(ja-jp,VS.110).gifパブリック メソッド

名前

Description

ComPtr::As メソッド

指定されたテンプレート パラメーターによって識別されるインターフェイスを表す ComPtr のオブジェクトを返します。

ComPtr::AsIID メソッド

指定されたインターフェイス ID で識別されるインターフェイスを表すオブジェクトを返します ComPtr

ComPtr::AsWeak メソッド

現在のオブジェクトへの弱い参照を取得します。

ComPtr::Attach メソッド

現在のテンプレートの型パラメーターによって指定されたインターフェイス型とこの ComPtr を関連付けます。

ComPtr::CopyTo メソッド

指定された出力のポインターにこの ComPtr に関連付けられている現在のディレクトリまたは指定されたインターフェイスをコピーします。

ComPtr::Detach メソッド

表すインターフェイスからこの ComPtr 付けが解除されるだけです。

ComPtr::Get メソッド

この ComPtr に関連付けられているインターフェイスへのポインターを取得します。

ComPtr::GetAddressOf メソッド

この ComPtr によって表されるインターフェイスへのポインターを含む ptr_ データ メンバーのアドレスを取得します。

ComPtr::ReleaseAndGetAddressOf メソッド

この ComPtr に関連付けられているインターフェイスを解放し、解放されたインターフェイスへのポインターを含む ptr_ データ メンバーのアドレスを取得します。

ComPtr::Swap メソッド

指定 ComPtr によってマネージ インターフェイスと現在の ComPtr によってマネージ インターフェイスを交換します。

BR244983.collapse_all(ja-jp,VS.110).gifプロテクト メソッド

名前

Description

ComPtr::InternalAddRef メソッド

この ComPtr に関連付けられたインターフェイスの参照カウントをインクリメントします。

ComPtr::InternalRelease メソッド

この ComPtr に関連付けられたインターフェイスの COM リリース操作を実行します。

BR244983.collapse_all(ja-jp,VS.110).gifパブリック演算子

名前

Description

ComPtr::operator Microsoft::WRL::Details::BoolType 演算子

ComPtr がインターフェイスのオブジェクトの有効期間を管理しているかどうかを示します。

ComPtr::operator& 演算子

現在の ComPtr のアドレスを取得します。

ComPtr::operator= 演算子

現在の ComPtr に値を割り当てます。

ComPtr::operator-> 演算子

現在のテンプレート パラメーターによって指定された型へのポインターを取得します。

ComPtr::operator== 演算子

ComPtr の 2 種類のオブジェクトが等しいかどうかを示します。

ComPtr::operator!= 演算子

ComPtr の 2 種類のオブジェクトが等しくないかどうかを示します。

BR244983.collapse_all(ja-jp,VS.110).gifプロテクト データ メンバー

名前

Description

ComPtr::ptr_ データ メンバー

ポインターが関連付けられているため、この ComPtr によって管理されるインターフェイスに。

継承階層

ComPtr

必要条件

ヘッダー: client.h

Microsoft名前空間: :: WRL

参照

関連項目

Microsoft::WRL 名前空間