std::auto_ptr - cppreference.com
De cppreference.com
| Definido en el archivo de encabezado |
||
|
|
(1) | (en desuso en C++11) (eliminado en C++17) |
|
|
(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)
2) Se proporciona una especialización para el tipo 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) [editar] | |
Destruye un auto_ptr y el objeto gestionado. (función miembro pública) [editar] | |
Transfiere la propiedad desde otro auto_ptr. (función miembro pública) [editar] | |
| Convierte el puntero gestionado a un puntero de distinto tipo. (función miembro pública) [editar] | |
Observadores | |
| Devuelve un puntero al objeto gestionado. (función miembro pública) [editar] | |
| Accede al objeto gestionado (función miembro pública) [editar] | |
Modificadores | |
| Reemplaza el objeto gestionado. (función miembro pública) [editar] | |
| Libera la propiedad del objeto gestionado. (función miembro pública) [editar] | |