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 |
指定された型になるポインター型を変換します。 |
メソッド
名前 |
説明 |
---|---|
クラス Ptrオブジェクトへの任意の参照を変換します。 |
必要条件
ヘッダー: <memory>
名前空間: std