Namespaces
Variants

std::auto_ptr<T>:: auto_ptr

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
explicit auto_ptr ( X * p = 0 ) throw ( ) ;
(1) (obsoleto en C++11)
(eliminado en C++17)
auto_ptr ( auto_ptr & r ) throw ( ) ;
(2) (obsoleto en C++11)
(eliminado en C++17)
template < class Y >
auto_ptr ( auto_ptr < Y > & r ) throw ( ) ;
(3) (obsoleto en C++11)
(eliminado en C++17)
auto_ptr ( auto_ptr_ref < X > m ) throw ( ) ;
(4) (obsoleto en C++11)
(eliminado en C++17)

Construye el auto_ptr desde un puntero que hace referencia al objeto a gestionar.

1) Construye el auto_ptr con el puntero p .
2) Construye el auto_ptr con el puntero contenido en r . Se llama a r. release ( ) para adquirir la propiedad del objeto.
3) Igual que (2). Y * debe ser implícitamente convertible a T * .
4) Construye el auto_ptr con el puntero contenido en la instancia de auto_ptr referenciada por m . p. release ( ) es llamado para el auto_ptr p que m contiene para adquirir la propiedad del objeto.
auto_ptr_ref es un tipo definido por la implementación que contiene una referencia a auto_ptr . std::auto_ptr es implícitamente convertible a y asignable desde este tipo. Se permite que la implementación proporcione a la plantilla un nombre diferente o implemente una funcionalidad equivalente de otras maneras.

Parámetros

p - un puntero a un objeto para gestionar
r - otro auto_ptr para transferir la propiedad del objeto desde
m - un tipo definido por la implementación que mantiene una referencia a auto_ptr

Notas

El constructor y el operador de asignación de copia desde auto_ptr_ref se proporcionan para permitir la construcción por copia y asignación de std::auto_ptr desde temporales anónimos. Dado que su constructor de copia y operador de asignación de copia toman el argumento como referencia no constante, no pueden enlazar argumentos rvalue directamente. Sin embargo, una conversión definida por el usuario puede ejecutarse (lo cual libera el auto_ptr original), seguida de una llamada al constructor u operador de asignación de copia que toman auto_ptr_ref por valor. Esta es una implementación temprana de semánticas de movimiento .