unique_ptr::unique_ptr

具有 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

将分配的 deleterunique_ptr

_Right

unique_ptr 字段的 unique_ptrrvalue 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

请参见

参考

unique_ptr Class

<memory>

线程安全性对标准C++库中

其他资源

unique_ptr 成员

memory 成员