unique_ptr::unique_ptr
7 Конструкторов для unique_ptr.
unique_ptr();
unique_ptr(nullptr_t);
explicit unique_ptr(
pointer _Ptr
);
unique_ptr(
Type *_Ptr,
typename conditional<
is_reference<Del>::value,
Del,
typename add_reference<const Del>::type>::type _Deleter
);
unique_ptr(
pointer ptr,
typename remove_reference<Del>::type&& _Deleter
);
unique_ptr(
unique_ptr&& _Right
);
template<class Ty2, Class Del2>
unique_ptr(
unique_ptr<Ty2, Del2>&& _Right
);
Параметры
Параметр |
Описание |
---|---|
_Ptr |
Указатель на ресурс, который необходимо присвоить unique_ptr. |
_Deleter |
deleter, чтобы присвоить unique_ptr. |
_Right |
rvalue reference в unique_ptr, из которого поля unique_ptr переместить, присвоенное только что созданный unique_ptr. |
Заметки
Первые 2 конструктора создают объект, не управляет нет ресурс. Третий конструктор сохраняет ptr в stored_ptr. Четвертый конструктор сохраняет ptr в stored_ptr и deleter в stored_deleter.
Пятый конструктор сохраняет ptr в stored_ptr и перемещает deleter в stored_deleter. Шестые и седьмые конструкторы сохраняют right.reset() в stored_ptr и по right.get_deleter() в stored_deleter.
Требования
Заголовок:<memory>
Пространство имен: std
См. также
Ссылки
Потокобезопасность в стандартной библиотеке C++