allocator クラス
このテンプレート クラスは、Type 型のオブジェクトの配列に対し、ストレージの割り当てと解放を管理するオブジェクトを記述します。 クラス アロケーター オブジェクトは、標準 C++ ライブラリのいくつかのコンテナーのテンプレート クラスにコンストラクターで指定された既定のアロケーター オブジェクトです。
template <class Type>
class allocator
パラメーター
- Type
ストレージを割り当てるか、解放されているオブジェクトの型。
解説
すべての標準テンプレート ライブラリのコンテナーに アロケーターにその既定テンプレート パラメーターがあります。 テンプレート クラス アロケーター は多少ウォーカーである複数の型定義を定義します。 これらは、ほとんどの価値が定義とは異なります。 ただし、同じメンバーを持つ別のクラスには、さらに重要な方法を提供する場合もあります。 このようなクラスのアロケーター オブジェクトを持つコンテナーを作成すると、そのコンテナーによって制御される要素の割り当てと解放を個別に制御できます。
たとえば、アロケーター オブジェクトは、プライベートなヒープのストレージを割り当てる場合があります。 これは、ヒープ上のメモリを割り当てられたオブジェクトにアクセスするには、標準以外のポインターが要求ように割り当てられている場合があります。 要素が共有メモリを管理する、または実行自動ガベージ コレクションをアクセスする特別なアクセサー オブジェクトを通じて、また、指定される可能性がある型定義で指定します。 したがって、アロケーター オブジェクトを使用してメモリを割り当ててクラスはポインターと参照オブジェクトを宣言するには、標準 C++ ライブラリのコンテナーと同様に、これらの型を使用します。
アロケーター クラスから派生する場合、_Other の typedef が新たに派生されたクラスを参照する バインド 構造体を提供する必要があります。
したがって、アロケーターは次の型を定義する:
ポインタ は [種類] へのポインターと同様に動作します。
const_pointer は [種類] への const ポインターのように動作します。
リファレンス は [種類] への参照のように動作します。
const_reference は [種類] への const 参照のように動作します。
これらの [種類] s はポインターと参照が割り当てられた要素にいくつかフォームを指定します。(allocator::pointer は* (すべてのアロケーター オブジェクトの場合 [種類] とクラス アロケーターのこのマニフェスト定義がありますが、必ずしも同じではありません。
メンバー
コンストラクター
allocator オブジェクトの作成に使用するコンストラクター。 |
Typedef
オブジェクトの種類に定数ポインターを提供する型は、アロケーターによって管理されます。 |
|
オブジェクトの型への参照を提供する型は、アロケーターによって管理されます。 |
|
オブジェクトの型へのポインターの値との間の相違点を表示できる符号付きな整数型は、アロケーターによって管理されます。 |
|
オブジェクトの型へのポインターを提供する型は、アロケーターによって管理されます。 |
|
オブジェクトの型への参照を提供する型は、アロケーターによって管理されます。 |
|
テンプレート クラス allocator のオブジェクトに割り当てることができるすべてのシーケンスの長さを表現できる符号なしな整数型。 |
|
アロケーターによって管理される型。 |
メンバー関数
値が指定されたオブジェクトのアドレスを検索します。 |
|
要素の少なくとも指定数を格納するのに十分なメモリ ブロックを割り当てます。 |
|
指定された値に初期化される指定したアドレスにあるオブジェクトの特定の型を構築します。 |
|
指定した位置にストレージの先頭から指定した数のオブジェクトを解放します。 |
|
オブジェクトが格納されているメモリを解放しないでオブジェクトのデストラクターを呼び出します。 |
|
空きメモリが使い果される前にクラス allocator オブジェクトに割り当てることができる型 Type の要素数を返します。 |
|
1 種類のオブジェクトのアロケーターを別の型のオブジェクトのストレージを割り当てることができる構造体。 |
演算子
allocator の別のオブジェクトに allocator の 1 種類のオブジェクトを割り当てます。 |
必要条件
ヘッダー: の<メモリ>
名前空間: std