Пространства имён
Варианты
Действия

std::auto_ptr

Материал из cppreference.com
< cpp‎ | memory
 
 
 
 
 
Defined in header <memory>
template< class T > class auto_ptr;
(1) (устарело)
template<> class auto_ptr<void>
(2) (устарело)

auto_ptr – умный указатель, который управляет объектом, полученным с помощью оператора new и удаляет этот объект, когда auto_ptr будет уничтожен. Данный указатель может быть использован с целью обеспечения безопасности исключений для динамически создаваемых объектов, для передачи владения динамически созданными объектами в функции и для возвращения динамически созданных объектов из функций.

Копирование auto_ptr копирует указатель и передает владение объекту назначения: конструктор копирования и операция присваивания копированием auto_ptr изменяют правый аргумент операции, таким образом "копия" становится не равной оригиналу. Из-за столь необычного подхода к копированию auto_ptr не может быть помещен в стандартные контейнеры. Для этих и других целей предпочтительнее использовать std::unique_ptr.

2) Специализация для типа void, она объявляет typedef element_type, но не содержит функций-членов.

Содержание

[править] Типы-члены

Тип члена Определение
element_type T

[править] Функции-члены

создает новый auto_ptr
(public функция-член)
уничтожает auto_ptr и управляемый объект
(public функция-член)
получение владения от другого auto_ptr
(public функция-член)
преобразует управляемый указатель в указатель на другой тип
(public функция-член)
Модификаторы
уничтожение управляемого объекта
(public функция-член)
освобождение от владения управляемым объектом
(public функция-член)
Наблюдатели
получает указатель на управляемый объект
(public функция-член)
доступ к управляемому объекту
(public функция-член)