std::auto_ptr
| Definido en el archivo de encabezado <memory>
|
||
template< class T > class auto_ptr; |
(1) | (en desuso en C++11) (eliminado en C++17) |
template<> class auto_ptr<void>; |
(2) | (en desuso en C++11) (eliminado en C++17) |
auto_ptr es un puntero inteligente que gestiona un objeto obtenido a través de la expresión new y elimina ese objeto cuando se destruye el auto_ptr. Puede utilizarse para proporcionar seguridad frente a excepciones para objetos asignados dinámicamente, para pasar la propiedad de objetos asignados dinámicamente a funciones y para devolver objetos asignados dinámicamente desde funciones.
Copiar un auto_ptr copia el puntero y transfiere la propiedad al destino: tanto la construcción de copia como la asignación de copia de auto_ptr modifican sus argumentos de la derecha, y la "copia" no es igual a la original. Debido a esta semántica de copia inusual, no se puede colocar a auto_ptr en contenedores estándar. Se prefiere std::unique_ptr para este y otros usos. (desde C++11)
void, declara typedef element_type, pero no funciones miembro.Se hace referencia a una plantilla de clase adicional auto_ptr_ref a lo largo de la documentación. Es un tipo definido por la implementación que contiene una referencia a auto_ptr. Se permite a la implementación dar a la plantilla un nombre diferente o implementar las funciones devolviéndola o aceptándola como parámetro de otras formas.
Tipos miembro
| Tipo miembro | Definición |
element_type
|
T
|
Funciones miembro
Crea un nuevo auto_ptr. (función miembro pública) | |
Destruye un auto_ptr y el objeto gestionado. (función miembro pública) | |
Transfiere la propiedad desde otro auto_ptr. (función miembro pública) | |
| Convierte el puntero gestionado a un puntero de distinto tipo. (función miembro pública) | |
Observadores | |
| Devuelve un puntero al objeto gestionado. (función miembro pública) | |
| Accede al objeto gestionado (función miembro pública) | |
Modificadores | |
| Reemplaza el objeto gestionado. (función miembro pública) | |
| Libera la propiedad del objeto gestionado. (función miembro pública) | |