Classe ComPtrRef

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

Sintaxe

template <typename T>
class ComPtrRef : public ComPtrRefBase<T>;

Parâmetros

T
Um tipo ComPtr<T> ou um tipo derivado dele, não apenas a interface representada pelo ComPtr.

Comentários

Representa uma referência a um objeto do tipo ComPtr<T>.

Membros

Construtores públicos

Nome Descrição
ComPtrRef::ComPtrRef Inicializa uma nova instância da classe ComPtrRef do ponteiro especificado para outro objeto ComPtrRef.

Métodos públicos

Nome Descrição
ComPtrRef::GetAddressOf Recupera o endereço de um ponteiro para a interface representada pelo objeto ComPtrRef atual.
ComPtrRef::ReleaseAndGetAddressOf Exclui o objeto ComPtrRef atual e retorna um ponteiro para um ponteiro para a interface que foi representada pelo objeto ComPtrRef.

Operadores públicos

Nome Descrição
ComPtrRef::operator InterfaceType** Exclui o objeto ComPtrRef atual e retorna um ponteiro para um ponteiro para a interface que foi representada pelo objeto ComPtrRef.
ComPtrRef::operator T* Retorna o valor do membro de dados ptr_ do objeto ComPtrRef atual.
ComPtrRef::operator void** Exclui o objeto ComPtrRef atual, converte o ponteiro para a interface que foi representada pelo objeto ComPtrRef como um ponteiro para ponteiro para void e retorna o ponteiro de conversão.
ComPtrRef::operator* Recupera o ponteiro para a interface representada pelo objeto ComPtrRef atual.
ComPtrRef::operator== Indica se dois objetos ComPtrRef são iguais.
ComPtrRef::operator!= Indica se dois objetos ComPtrRef não são iguais.

Hierarquia de herança

ComPtrRefBase

ComPtrRef

Requisitos

Cabeçalho: client.h

Namespace: Microsoft::WRL::Details

ComPtrRef::ComPtrRef

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

ComPtrRef(
   _In_opt_ T* ptr
);

Parâmetros

ptr
O valor subjacente de outro objeto ComPtrRef.

Comentários

Inicializa uma nova instância da classe ComPtrRef do ponteiro especificado para outro objeto ComPtrRef.

ComPtrRef::GetAddressOf

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

InterfaceType* const * GetAddressOf() const;

Valor de retorno

Endereço de um ponteiro para a interface representada pelo objeto ComPtrRef atual.

Comentários

Recupera o endereço de um ponteiro para a interface representada pelo objeto ComPtrRef atual.

ComPtrRef::operator==

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

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
);

Parâmetros

a
Uma referência a um objeto ComPtrRef.

b
Uma referência a outro objeto ComPtrRef ou um ponteiro para um tipo anônimo (void* ).

Valor de retorno

O primeiro operador produz true se o objeto a for igual ao objeto b; caso contrário, false.

O segundo e o terceiro operadores produzem true se o objeto a for igual a nullptr; caso contrário, false.

O quarto e o quinto operadores produzem true se o objeto a for igual ao objeto b; caso contrário, false.

Comentários

Indica se dois objetos ComPtrRef são iguais.

ComPtrRef::operator!=

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

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
);

Parâmetros

a
Uma referência a um objeto ComPtrRef.

b
Uma referência a outro objeto ComPtrRef ou um ponteiro para um objeto anônimo (void*).

Valor de retorno

O primeiro operador produz true se o objeto a não for igual ao objeto b; caso contrário, false.

O segundo e o terceiro operadores produzem true se o objeto a não for igual a nullptr; caso contrário, false.

O quarto e o quinto operadores produzem true se o objeto a não for igual ao objeto b; caso contrário, false.

Comentários

Indica se dois objetos ComPtrRef não são iguais.

ComPtrRef::operator InterfaceType**

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

operator InterfaceType**();

Comentários

Exclui o objeto ComPtrRef atual e retorna um ponteiro para um ponteiro para a interface que foi representada pelo objeto ComPtrRef.

ComPtrRef::operator*

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

InterfaceType* operator *();

Valor de retorno

Ponteiro para a interface representada pelo objeto ComPtrRef atual.

Comentários

Recupera o ponteiro para a interface representada pelo objeto ComPtrRef atual.

ComPtrRef::operator T*

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

operator T*();

Comentários

Retorna o valor do membro de dados ptr_ do objeto ComPtrRef atual.

ComPtrRef::operator void**

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

operator void**() const;

Comentários

Exclui o objeto ComPtrRef atual, converte o ponteiro para a interface que foi representada pelo objeto ComPtrRef como um ponteiro para ponteiro para void e retorna o ponteiro de conversão.

ComPtrRef::ReleaseAndGetAddressOf

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

InterfaceType** ReleaseAndGetAddressOf();

Valor de retorno

Ponteiro para a interface que foi representada pelo objeto ComPtrRef excluído.

Comentários

Exclui o objeto ComPtrRef atual e retorna um ponteiro para um ponteiro para a interface que foi representada pelo objeto ComPtrRef.