Clase de CAdapt

Esta plantilla se utiliza para ajustar las clases que vuelven a definir el operador para devolver algo distinto de la dirección del objeto.

template <
   class T
>
class CAdapt

Parámetros

  • T
    El tipo apropiado.

Members

bs6acf5x.collapse_all(es-es,VS.110).gifConstructores públicos

Name

Descripción

CAdapt::CAdapt

el constructor.

bs6acf5x.collapse_all(es-es,VS.110).gifOperadores públicos

Name

Descripción

Const T& de CAdapt::operator

Devuelve una referencia de const a m_T.

CAdapt::operator T&

devuelve una referencia a m_T.

CAdapt::operator <

Compara un objeto de tipo ajustado con m_T.

CAdapt::operator =

Asigna un objeto de tipo apropiado para m_T.

== De CAdapt::operator

Compara un objeto de tipo ajustado con m_T.

bs6acf5x.collapse_all(es-es,VS.110).gifMiembros de datos públicos

Name

Descripción

CAdapt::m_T

Los datos que son apropiados.

Comentarios

CAdapt es una plantilla sencilla utilizada para ajustar las clases que vuelven a definir el dirección- de operator (operator &) para devolver algo distinto de la dirección del objeto.Algunos ejemplos de esas clases incluyen CComBSTRATL, CComPtr, y las clases de CComQIPtr , y la clase de la compatibilidad con COM del compilador, _com_ptr_t.Todas estas clases vuelven a definir el dirección- de operator para devolver la dirección de una de sus miembros de datos ( BSTR en el caso de CComBSTR, y un puntero de interfaz en el caso de las otras clases).

El rol principal de entity_CODECAdapt es ocultar el dirección- de operator definido por la clase T, todavía aún mantiene las características de clase apropiada.CAdapt satisface este rol almacenando un miembro público, m_T, de Tcon tipo, y definir operadores de conversión, los operadores de comparación, y un constructor de copias para permitir que las especializaciones de CAdapt se tratan como si fueran objetos de Tescrito.

La clase CAdapt de adaptadores es útil porque muchas clases de contenedor (como el contenedor de STL ordena) espera pueda obtener las direcciones de los objetos contenido usando el dirección- de operator.La redefinición de dirección- de operator puede confundir este requisito, produciendo normalmente errores de compilación y evita el uso del tipo unadapted con ese contenedor.CAdapt proporciona una manera alrededor de estos problemas.

Normalmente, utilizará CAdapt cuando desee almacenar CComBSTR, CComPtr, CComQIPtr, o los objetos de _com_ptr_t en un contenedor de STL como list.No puede almacenar objetos de estos tipos como ésta:

std::list< CComBSTR > m_List;

En su lugar, debe almacenar objetos de adaptador como ésta:

std::list< CAdapt< CComBSTR > > m_List;

Requisitos

encabezado: atlcomcli.h

Vea también

Otros recursos

Información general de la clase ATL