次の方法で共有


pointer_traits 構造体

Ptr テンプレート クラスのオブジェクトが、ポインター型 allocator_traits を持つアロケーターを記述するために必要とする情報を提供します。

template<class Ptr>
    struct pointer_traits;

解説

Ptr は型 Ty * または次のプロパティを持つクラスの生ポインターです。

template<class Ty, class... Rest>
    struct Ptr
    { // describes a pointer type usable by allocators
    typedef Ptr pointer;
    typedef T1 element_type; // optional
    typedef T2 difference_type; // optional
    template<class Other>
        using rebind = typename Ptr<Other, Rest...>; // optional
    
    static pointer pointer_to(element_type& obj); // optional
    };

注意

C++ 標準でエイリアスのテンプレートとして rebind のメンバーを指定すると、Visual C++ には structとして再を実装します。

Typedef

名前

説明

typedef T2 difference_type

その型がある場合 T2Ptr::difference_type 型は、それ ptrdiff_tです。 Ptr が生ポインターの場合、型は ptrdiff_tです。

typedef T1 element_type

その型がある場合 T1Ptr::element_type 型は、それ Tyです。 Ptr が生ポインターの場合、型は Tyです。

typedef Ptr pointer

型は Ptr です。

構造体

名前

説明

pointer_traits::rebind

指定された型になるポインター型を変換します。

メソッド

名前

説明

pointer_traits::pointer_to メソッド

クラス Ptrオブジェクトへの任意の参照を変換します。

必要条件

ヘッダー: <memory>

名前空間: std

参照

関連項目

<memory>

allocator_traits クラス