std::auto_ptr (3) - Linux Manuals
std::auto_ptr: std::auto_ptr
NAME
Synopsis
Defined in header <memory>
template< class T > class auto_ptr; (1) (deprecated in C++11)
template<> class auto_ptr<void>; (2) (deprecated in C++11)
auto_ptr is a smart pointer that manages an object obtained via new_expression and deletes that object when auto_ptr itself is destroyed. It may be used to provide exception safety for dynamically-allocated objects, for passing ownership of dynamically-allocated objects into functions and for returning dynamically-allocated objects from functions.
Copying an auto_ptr copies the pointer and transfers ownership to the destination: both copy construction and copy assignment of auto_ptr modify their right hand arguments, and the "copy" is not equal to the original. Because of these unusual copy semantics, auto_ptr may not be placed in standard containers.
std::unique_ptr is preferred for this and other uses.
(since C++11)
2) Specialization for type void is provided, it declares the typedef element_type, but no member functions.
An additional class template auto_ptr_ref is referred to throughout the documentation. It is an implementation-defined type that holds a reference to auto_ptr. The implementation is allowed to provide the template with a different name or implement the functions returning it or accepting it as parameter in other ways.
Member types
Member type Definition
element_type T
Member functions
constructor (public member function)
destructor (public member function)
operator= (public member function)
operator_auto_ptr<Y> (public member function)
operator_auto_ptr_ref<Y>
Observers
get (public member function)
operator* (public member function)
operator->
Modifiers
reset (public member function)