次の方法で共有


unique_ptr::unique_ptr

unique_ptrの 7 種類のコンストラクターがあります。

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

unique_ptrに割り当てる deleter

_Right

unique_ptr がわかります unique_ptr への rvalue reference は新しく構築された unique_ptrに割り当てられた移動です。

解説

最初の 2 個のコンストラクターはリソースを管理するオブジェクトを構築します。 3 番目のコンストラクターは stored_ptrで ptr を格納します。 4 番目のコンストラクターは stored_ptr で ptr と stored_deleterで deleter を格納します。

5 番目のコンストラクターは stored_ptr で ptr を保存し、stored_deleterに deleter を移動します。 6 つ目と 7 つ目のコンストラクターは stored_ptr で right.reset() を保存し、stored_deleterに right.get_deleter() を移動します。

必要条件

ヘッダー: <memory>

名前空間: std

参照

関連項目

unique_ptr クラス

<memory>

C++ 標準ライブラリ内のスレッド セーフ

その他の技術情報

unique_ptr のメンバー

<memory> メンバー