Compartilhar via


ComPtr::operator = operador

Atribui um valor para o ComPtr atual.

WRL_NOTHROW ComPtr& operator=(
   decltype(__nullptr)
);
WRL_NOTHROW ComPtr& operator=(
   _In_opt_ T *other
);
template <
   typename U
>
WRL_NOTHROW ComPtr& operator=(
   _In_opt_ U *other
);
WRL_NOTHROW ComPtr& operator=(
   const ComPtr &other
);
template<
   class U
>
WRL_NOTHROW ComPtr& operator=(
   const ComPtr<U>& other
);
WRL_NOTHROW ComPtr& operator=(
   _Inout_ ComPtr &&other
);
template<
   class U
>
WRL_NOTHROW ComPtr& operator=(
   _Inout_ ComPtr<U>&& other
);

Parâmetros

  • U
    Uma classe.

  • other
    Uma referência de ponteiro, rvalue ou referência a um tipo ou outro ComPtr.

Valor de retorno

Uma referência a ComPtr atual.

Comentários

A primeira versão deste operador atribui um valor vazio para o ComPtr atual.

Na segunda versão, se o ponteiro de interface de atribuição não é o mesmo que o ponteiro de interface ComPtr atual, o segundo ponteiro de interface é atribuído a ComPtr atual.

Na terceira versão, o ponteiro de interface atribuindo é atribuído para o ComPtr atual.

Na quarta versão, se o ponteiro de interface do valor atribuindo não é o mesmo que o ponteiro de interface ComPtr atual, o segundo ponteiro de interface é atribuído a ComPtr atual.

A quinta versão é um operador de cópia; uma referência a um ComPtr é atribuída para o ComPtr atual.

A versão do sexta é um operador de cópia que usa mover semântica; uma referência de rvalue para um ComPtr se qualquer tipo for estático, converter e, em seguida, atribuída a ComPtr atual.

A sétima versão é um operador de cópia que usa mover semântica; uma referência para um ComPtr do tipo de rvalue U é static converter, em seguida e atribuído para o ComPtr atual.

Requisitos

Cabeçalho: client.h

Namespace: Microsoft::WRL

Consulte também

Referência

Classe ComPtr