Compartir a través de


ComPtrRef (clase)

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

Sintaxis

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

Parámetros

T
Tipo ComPtr<T> o un tipo derivado de él, no solo la interfaz que ComPtr representa.

Comentarios

Representa una referencia a un objeto de tipo ComPtr<T>.

Miembros

Constructores públicos

Nombre Descripción
ComPtrRef::ComPtrRef Inicializa una instancia nueva de la clase ComPtrRef a partir del puntero especificado a otro objeto ComPtrRef.

Métodos públicos

Nombre Descripción
ComPtrRef::GetAddressOf Recupera la dirección de un puntero a la interfaz representada por el objeto ComPtrRef actual.
ComPtrRef::ReleaseAndGetAddressOf Elimina el objeto ComPtrRef actual y devuelve un puntero a un puntero a la interfaz representada por el objeto ComPtrRef.

Operadores públicos

Nombre Descripción
ComPtrRef::operator InterfaceType** Elimina el objeto ComPtrRef actual y devuelve un puntero a un puntero a la interfaz representada por el objeto ComPtrRef.
ComPtrRef::operator T* Devuelve el valor del miembro de datos ptr_ del objeto ComPtrRef actual.
ComPtrRef::operator void** Elimina el objeto ComPtrRef actual, convierte el puntero a la interfaz representada por el objeto ComPtrRef como puntero a puntero a void y, a continuación, devuelve el puntero de conversión.
ComPtrRef::operator* Recupera el puntero a la interfaz representada por el objeto ComPtrRef actual.
ComPtrRef::operator== Indica si dos objetos ComPtrRef son iguales.
ComPtrRef::operator!= Indica si dos objetos ComPtrRef no son iguales.

Jerarquía de herencia

ComPtrRefBase

ComPtrRef

Requisitos

Encabezado: client.h

Espacio de nombres:Microsoft::WRL::Details

ComPtrRef::ComPtrRef

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

ComPtrRef(
   _In_opt_ T* ptr
);

Parámetros

ptr
Valor subyacente de otro objeto ComPtrRef.

Comentarios

Inicializa una instancia nueva de la clase ComPtrRef a partir del puntero especificado a otro objeto ComPtrRef.

ComPtrRef::GetAddressOf

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

InterfaceType* const * GetAddressOf() const;

Valor devuelto

Dirección de un puntero a la interfaz representada por el objeto ComPtrRef actual.

Comentarios

Recupera la dirección de un puntero a la interfaz representada por el objeto ComPtrRef actual.

ComPtrRef::operator==

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el 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
Referencia a un objeto ComPtrRef.

b
Referencia a otro objeto ComPtrRef o puntero a un tipo anónimo (void*).

Valor devuelto

El primer operador produce true si el objeto a es igual al objeto b; de lo contrario, false.

Los operadores segundo y tercero producen true si el objeto a es igual a nullptr; de lo contrario, false.

Los operadores cuarto y quinto producen true si el objeto a es igual al objeto b; de lo contrario, false.

Comentarios

Indica si dos objetos ComPtrRef son iguales.

ComPtrRef::operator==

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el 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
Referencia a un objeto ComPtrRef.

b
Referencia a otro objeto ComPtrRef o puntero a un objeto anónimo (void*).

Valor devuelto

El primer operador produce true si el objeto a no es igual al objeto b; de lo contrario, false.

Los operadores segundo y tercero producen true si el objeto a no es igual a nullptr; de lo contrario, false.

Los operadores cuarto y quinto producen true si el objeto a no es igual al objeto b; de lo contrario, false.

Comentarios

Indica si dos objetos ComPtrRef no son iguales.

ComPtrRef::operator InterfaceType**

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

operator InterfaceType**();

Comentarios

Elimina el objeto ComPtrRef actual y devuelve un puntero a un puntero a la interfaz representada por el objeto ComPtrRef.

ComPtrRef::operator*

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

InterfaceType* operator *();

Valor devuelto

Puntero a la interfaz representada por el objeto ComPtrRef actual.

Comentarios

Recupera el puntero a la interfaz representada por el objeto ComPtrRef actual.

ComPtrRef::operator T*

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

operator T*();

Comentarios

Devuelve el valor del miembro de datos ptr_ del objeto ComPtrRef actual.

ComPtrRef::operator void**

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

operator void**() const;

Comentarios

Elimina el objeto ComPtrRef actual, convierte el puntero a la interfaz representada por el objeto ComPtrRef como puntero a puntero a void y, a continuación, devuelve el puntero de conversión.

ComPtrRef::ReleaseAndGetAddressOf

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

InterfaceType** ReleaseAndGetAddressOf();

Valor devuelto

Puntero a la interfaz representada por el objeto ComPtrRef eliminado.

Comentarios

Elimina el objeto ComPtrRef actual y devuelve un puntero a un puntero a la interfaz representada por el objeto ComPtrRef.