_com_ptr_t クラス

Microsoft 固有の仕様 →

_com_ptr_t のオブジェクトは COM インターフェイス ポインターをカプセル化し「 " の」ポインターと呼ばれます。このテンプレート クラスは関数呼び出しによる IUnknown のメンバー関数のリソース割り当てと解放を管理します : QueryInterfaceAddRef解放

スマート ポインターは**_COM_SMARTPTR_TYPEDEF** マクロによって提供された typedef 定義で参照されます。このマクロではインターフェイス名と IID を受け取りPtr のサフィックスとインターフェイスの名前で _com_ptr_t の特殊化を宣言します。次に例を示します。

_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));

_com_ptr_t から特化した IMyInterfacePtr を宣言します。

このテンプレート クラスのセットの 関数テンプレートメンバー比較演算子の右側のスマート ポインターとの比較をサポートする。

構築

_com_ptr_t

_com_ptr_t オブジェクトを構築します。

低水準の操作

AddRef

カプセル化されたインターフェイス ポインターの IUnknownAddRef のメンバー関数を呼び出します。

[アタッチ]

このスマート ポインター型の生のインターフェイス ポインターをカプセル化します。

CreateInstance

CLSID または ProgID のオブジェクトの新しいインスタンスを作成します。

デタッチ

抽出しカプセル化されたインターフェイス ポインター。

GetActiveObject

CLSID または ProgID のオブジェクトの既存のインスタンスにアタッチされます。

GetInterfacePtr

カプセル化のインターフェイス ポインターを返します。

QueryInterface

カプセル化されたインターフェイス ポインターの IUnknownQueryInterface のメンバー関数を呼び出します。

リリース

カプセル化されたインターフェイス ポインターの IUnknown解放 のメンバー関数を呼び出します。

演算子

operator =

_com_ptr_t の既存のオブジェクトに新しい値を割り当てます。

operator ==! =<><=>=

別のスマート ポインター生のインターフェイス ポインターまたは null にスマート ポインター オブジェクトを比較します。

抽出器

カプセル化された COM インターフェイス ポインターを抽出します。

要件

ヘッダー : comip.h

ライブラリ : comsuppw.lib または comsuppwd.lib (詳細については /Zc:wchar_t (wchar_t をネイティブ型として認識) を参照してください)

参照

関連項目

コンパイラ COM サポート クラス