auto_ptr (Clase)
Ajusta un puntero inteligente alrededor de un recurso que garantice que el recurso se destruya automáticamente cuando el control deja un bloque.
La clase más capaz de unique_ptr reemplaza auto_ptr. Para obtener más información, vea unique_ptr (Clase).
Para obtener más información sobre throw() y control de excepciones, vea Especificaciones de excepción.
template<class Type>
class auto_ptr {
public:
typedef Type element_type;
explicit auto_ptr(Type *_Ptr = 0) throw();
auto_ptr(auto_ptr<Type>& _Right) throw();
template<class Other>
operator auto_ptr<Other>() throw();
template<class Other>
auto_ptr<Type>& operator=(auto_ptr<Other>& _Right) throw();
template<class Other>
auto_ptr(auto_ptr<Other>& _Right);
auto_ptr<Type>& operator=(auto_ptr<Type>& _Right);
~auto_ptr();
Type& operator*() const throw();
Type *operator->()const throw();
Type *get() const throw();
Type *release()throw();
void reset(Type *_Ptr = 0);
};
Parámetros
_Right
auto_ptr de las que para obtener un recurso existente._Ptr
El puntero especificado para reemplazar el puntero almacenado.
Comentarios
La clase de plantilla describe un puntero inteligente, denominado auto_ptr, a un objeto asignado. El puntero debe ser NULL o designar un objeto asignado por new. auto_ptr transfiere propiedad si su valor almacenado se asigna a otro objeto. (Reemplaza el valor almacenado después de una transferencia con un puntero NULL.) El destructor para auto_ptr<Type> elimina el objeto asignado. auto_ptr<Type> garantiza que un objeto asignado automáticamente está eliminado cuando el control deja un bloque, incluso con una excepción. No debería construir dos objetos de auto_ptr<Type> propietarios el mismo objeto.
Puede pasar un objeto de auto_ptr<Type> por valor como un argumento a una llamada de función. auto_ptr no puede ser un elemento de ningún contenedor de la biblioteca. No puede administrar fiable una secuencia de objetos de auto_ptr<Type> con un contenedor de la biblioteca de plantillas estándar.
Miembros
Constructores
El constructor para los objetos de auto_ptrescrito. |
Typedefs
El tipo es un sinónimo para el parámetro Typede la plantilla. |
Funciones miembro
La función miembro devuelve el puntero almacenado myptr. |
|
El miembro reemplaza el puntero almacenado myptr con un puntero NULL y devuelve el puntero previamente almacenado. |
|
La función miembro evalúa la expresión delete myptr, pero solo si los cambios almacenados de myptr de valor de puntero como resultado de llamada de función. A continuación reemplaza el puntero almacenado con ptr. |
Operadores
Un operador de asignación que transfiere propiedad a partir de un objeto de auto_ptr a otro. |
|
El operador de desreferenciación para los objetos de auto_ptrescrito. |
|
El operador para permitir el acceso a miembros. |
|
Conversiones de una clase de auto_ptr a otra clase de auto_ptr. |
|
Conversiones de auto_ptr a auto_ptr_ref. |
Requisitos
memoria<deEncabezado:>
Espacio de nombres: std
Vea también
Referencia
Seguridad para subprocesos en la biblioteca estándar de C++