Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Esta clase proporciona métodos para crear y usar un objeto identificador.
Sintaxis
class CHandle
Miembros
Constructores públicos
| Nombre | Descripción |
|---|---|
| CHandle::CHandle | Constructor . |
| CHandle::~CHandle | El destructor . |
Métodos públicos
| Nombre | Descripción |
|---|---|
| CHandle::Attach | Llame a este método para adjuntar el objeto CHandle a un identificador existente. |
| CHandle::Close | Llame a este método para cerrar un objeto CHandle. |
| CHandle::Detach | Llame a este método para desasociar un identificador de un objeto CHandle. |
Operadores públicos
| Nombre | Descripción |
|---|---|
| CHandle::operator HANDLE | Devuelve el valor del identificador almacenado. |
| CHandle::operator = | Operador de asignación. |
Miembros de datos públicos
| Nombre | Descripción |
|---|---|
| CHandle::m_h | Variable miembro que almacena el identificador. |
Comentarios
Un objeto CHandle se puede usar siempre que se requiera un identificador: la principal diferencia es que el objeto CHandle se eliminará automáticamente.
Nota:
Algunas funciones de API usarán NULL como identificador vacío o no válido, mientras que otras usan INVALID_HANDLE_VALUE. CHandle solo usa NULL y tratará INVALID_HANDLE_VALUE como identificador real. Si llama a una API que puede devolver INVALID_HANDLE_VALUE, debe comprobar este valor antes de llamar a CHandle::Attach o pasarlo al constructor CHandle y, en su lugar, pasar NULL.
Requisitos
Encabezado: atlbase.h
CHandle::Attach
Llame a este método para adjuntar el objeto CHandle a un identificador existente.
void Attach(HANDLE h) throw();
Parámetros
h
CHandle tomará posesión del identificador h.
Comentarios
Asigna el CHandle objeto al identificador h y, a continuación, llama a h.Detach(). En las compilaciones de depuración, se generará un ATLASSERT si h es NULL. No se realiza ninguna otra comprobación sobre la validez del identificador.
CHandle::CHandle
Constructor .
CHandle() throw();
CHandle(CHandle& h) throw();
explicit CHandle(HANDLE h) throw();
Parámetros
h
Un identificador existente o CHandle.
Comentarios
Crea un nuevo objeto CHandle, opcionalmente mediante un identificador o objeto CHandle existente.
CHandle::~CHandle
El destructor .
~CHandle() throw();
Comentarios
Libera el objeto CHandle llamando a CHandle::Close.
CHandle::Close
Llame a este método para cerrar un objeto CHandle.
void Close() throw();
Comentarios
Cierra un identificador de objeto abierto. Si el identificador es NULL, que será el caso si ya se ha llamado a Close, se generará un ATLASSERT en compilaciones de depuración.
CHandle::Detach
Llame a este método para desasociar un identificador de un objeto CHandle.
HANDLE Detach() throw();
Valor devuelto
Devuelve el identificador que se va a desasociar.
Comentarios
Libera la propiedad del manipulador.
CHandle::m_h
Variable miembro que almacena el identificador.
HANDLE m_h;
CHandle::operator =
Operador de asignación.
CHandle& operator=(CHandle& h) throw();
Parámetros
h
CHandle tomará posesión del identificador h.
Valor devuelto
Devuelve una referencia al objeto CHandle nuevo.
Comentarios
Si el objeto CHandle contiene actualmente un identificador, se cerrará. El objeto CHandle que se pasa tendrá su referencia de identificador establecida en NULL. Esto garantiza que dos objetos CHandle nunca contendrán el mismo identificador activo.
CHandle::operator HANDLE
Devuelve el valor del identificador almacenado.
operator HANDLE() const throw();
Comentarios
Devuelve el valor almacenado en CHandle::m_h.