具有 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
);
参数
Parameter |
说明 |
---|---|
_Ptr |
对于将要分配资源的指针。 unique_ptr. |
_Deleter |
将分配的 deleter 到 unique_ptr。 |
_Right |
为 unique_ptr 字段的 unique_ptr 的 rvalue reference 是移动分配给新构造的 unique_ptr。 |
备注
前两个构造函数构造不控制资源的对象。第三个构造函数。 stored_ptr存储 ptr 。第四个构造函数在 stored_ptr 存储 ptr 和 deleter 在 stored_deleter。
第五个构造函数。 stored_ptr 存储 ptr 并将 deleterstored_deleter。第六个和第七个构造函数。 stored_ptr 存储 right.reset() 并将 right.get_deleter()stored_deleter。
要求
**标题:**memory
命名空间: std