ComPtrRef クラス
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
構文
template <typename T>
class ComPtrRef : public ComPtrRefBase<T>;
パラメーター
T
ComPtr<T> 型またはそこから派生した型は、ComPtr
によって表される単なるインターフェイスではありません。
解説
型 ComPtr<T>
のオブジェクトへの参照を表します。
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
ComPtrRef::ComPtrRef | 指定した他の ComPtrRef オブジェクトから ComPtrRef クラスの新しいインスタンスを初期化します。 |
パブリック メソッド
名前 | 説明 |
---|---|
ComPtrRef::GetAddressOf | 現在 ComPtrRef のオブジェクトによって表されるインターフェイスへのポインターのアドレスを取得します。 |
ComPtrRef::ReleaseAndGetAddressOf | 現在の ComPtrRef オブジェクトを削除し、ComPtrRef オブジェクトによって表現されていたインタフェースへの pointer-to-a-pointer を返します。 |
パブリック演算子
名前 | 説明 |
---|---|
ComPtrRef::operator InterfaceType** | 現在の ComPtrRef オブジェクトを削除し、ComPtrRef オブジェクトによって表現されていたインタフェースへの pointer-to-a-pointer を返します。 |
ComPtrRef::operator T* | 現在の ComPtrRef オブジェクトの ptr_ データ メンバーの値を返します。 |
ComPtrRef::operator void** | 現在の ComPtrRef オブジェクトを削除し、ComPtrRef オブジェクトによって表現されていたインタフェースへのポインターを void への pointer-to-pointer にキャストし、キャストしたポインターを返します。 |
ComPtrRef::operator* | 現在 ComPtrRef のオブジェクトによって表されるインターフェイスへのポインターを取得します。 |
ComPtrRef::operator== | 2 つの ComPtrRef オブジェクトが等しいかどうかを示します。 |
ComPtrRef::operator!= | 2 つの ComPtrRef オブジェクトが等しくないかどうかを示します。 |
継承階層
ComPtrRefBase
ComPtrRef
要件
ヘッダー: client.h
名前空間: Microsoft::WRL::Details
ComPtrRef::ComPtrRef
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
ComPtrRef(
_In_opt_ T* ptr
);
パラメーター
ptr
別の ComPtrRef
オブジェクトの基礎となる値です。
解説
指定した他の ComPtrRef
オブジェクトから ComPtrRef
クラスの新しいインスタンスを初期化します。
ComPtrRef::GetAddressOf
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
InterfaceType* const * GetAddressOf() const;
戻り値
現在 ComPtrRef
のオブジェクトによって表されるインターフェイスへのポインターのアドレス。
解説
現在 ComPtrRef
のオブジェクトによって表されるインターフェイスへのポインターのアドレスを取得します。
ComPtrRef::operator==
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
bool operator==(
const Details::ComPtrRef<ComPtr<T>>& a,
const Details::ComPtrRef<ComPtr<U>>& b
);
bool operator==(
const Details::ComPtrRef<ComPtr<T>>& a,
decltype(__nullptr)
);
bool operator==(
decltype(__nullptr),
const Details::ComPtrRef<ComPtr<T>>& a
);
bool operator==(
const Details::ComPtrRef<ComPtr<T>>& a,
void* b
);
bool operator==(
void* b,
const Details::ComPtrRef<ComPtr<T>>& a
);
パラメーター
a
ComPtrRef
オブジェクトへの参照です。
b
別の ComPtrRef
オブジェクトへの参照、または匿名型 (void*
) へのポインター。
戻り値
オブジェクト a がオブジェクト b と等しい場合、最初の演算子は true
を生成します。それ以外の場合は false
を生成します。
オブジェクト a が nullptr
と等しい場合、2 番目と 3 番目の演算子は true
を生成します。それ以外の場合は false
を生成します。
4 番目と 5 番目の演算子は、オブジェクト a がオブジェクト b と等しい場合は true
を、そうでない場合は false
を生成します。
解説
2 つの ComPtrRef
オブジェクトが等しいかどうかを示します。
ComPtrRef::operator!=
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
bool operator!=(
const Details::ComPtrRef<ComPtr<T>>& a,
const Details::ComPtrRef<ComPtr<U>>& b
);
bool operator!=(
const Details::ComPtrRef<ComPtr<T>>& a,
decltype(__nullptr)
);
bool operator!=(
decltype(__nullptr),
const Details::ComPtrRef<ComPtr<T>>& a
);
bool operator!=(
const Details::ComPtrRef<ComPtr<T>>& a,
void* b
);
bool operator!=(
void* b,
const Details::ComPtrRef<ComPtr<T>>& a
);
パラメーター
a
ComPtrRef
オブジェクトへの参照です。
b
別の ComPtrRef
オブジェクトへの参照、または匿名オブジェクト (void*
) へのポインター。
戻り値
オブジェクト a がオブジェクト b と等しくない場合、最初の演算子は true
を生成します。それ以外の場合は false
を生成します。
オブジェクト a が nullptr
と等しくない場合、2 番目と 3 番目の演算子は true
を生成します。それ以外の場合は false
を生成します。
4 番目と 5 番目の演算子は、オブジェクト a がオブジェクト b と等しくない場合は true
を、そうでない場合は false
を生成します。
解説
2 つの ComPtrRef
オブジェクトが等しくないかどうかを示します。
ComPtrRef::operator InterfaceType**
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
operator InterfaceType**();
解説
現在の ComPtrRef
オブジェクトを削除し、ComPtrRef
オブジェクトによって表現されていたインタフェースへの pointer-to-a-pointer を返します。
ComPtrRef::operator*
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
InterfaceType* operator *();
戻り値
現在 ComPtrRef
のオブジェクトによって表されるインターフェイスへのポインター。
解説
現在 ComPtrRef
のオブジェクトによって表されるインターフェイスへのポインターを取得します。
ComPtrRef::operator T*
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
operator T*();
解説
現在の ComPtrRef
オブジェクトの ptr_ データ メンバーの値を返します。
ComPtrRef::operator void**
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
operator void**() const;
解説
現在の ComPtrRef
オブジェクトを削除し、ComPtrRef
オブジェクトによって表現されていたインタフェースへのポインターを void
への pointer-to-pointer にキャストし、キャストしたポインターを返します。
ComPtrRef::ReleaseAndGetAddressOf
WRL インフラストラクチャをサポートします。コードから直接使用するためのものではありません。
InterfaceType** ReleaseAndGetAddressOf();
戻り値
この削除された ComPtrRef
オブジェクトによって表されたインターフェイスへのポインター。
解説
現在の ComPtrRef
オブジェクトを削除し、ComPtrRef
オブジェクトによって表現されていたインタフェースへの pointer-to-a-pointer を返します。