C ++ライブラリ-<unordered_set>
前書き
これは、一意の要素を特定の順序で格納し、その値に基づいて個々の要素をすばやく取得できるようにする連想コンテナです。
定義
以下はstd :: unordered_setの定義です
template < class Key,
class Hash = hash<Key>,
class Pred = equal_to<Key>,
class Alloc = allocator<Key>
> class unordered_set;
パラメーター
Key −要素のタイプを定義します。
Hash −単項関数オブジェクトです。
Pred −これは、要素と同じ型の2つの引数を取り、boolを返すバイナリ述語です。
Alloc −allowcaterのタイプを定義します。
メンバータイプ
以下のメンバータイプは、パラメーターとして使用したり、メンバー関数によってタイプを返すことができます。
メンバータイプ | 定義 | ノート |
---|---|---|
key_type | これは最初のテンプレートパラメータ(Key)です | |
value_type | これは最初のテンプレートパラメータ(Key)です | key_typeと同じ |
ハッシャー | これは2番目のテンプレートパラメータ(ハッシュ)です。 | デフォルトはhash <key_type>です。 |
key_equal | これは3番目のテンプレートパラメータ(Pred)です | デフォルトはequal_to <key_type>です。 |
allocator_type | これは4番目のテンプレートパラメータ(Alloc)です。 | デフォルトは次のとおりです。allocator<value_type> |
参照 | Alloc :: reference | |
const_reference | Alloc :: const_reference | |
ポインター | Alloc :: pointer | デフォルトのアロケータの場合:value_type * |
const_pointer | Alloc :: const_pointer | デフォルトのアロケータの場合:const value_type * |
イテレータ | constvalue_typeへのフォワードイテレータ | * const_iteratorに変換可能 |
const_iterator | constvalue_typeへのフォワードイテレータ | * |
local_iterator | constvalue_typeへのフォワードイテレータ | * const_local_iteratorに変換可能 |
const_local_iterator | constvalue_typeへのフォワードイテレータ | * |
size_type | 符号なし整数型 | 通常size_tと同じ |
Difference_type | 符号付き整数型 | 通常はptrdiff_tと同じです |
メンバー関数
以下はメンバー関数のリストです
シニア番号 | 方法と説明 |
---|---|
1 | (コンストラクタ) unordered_setを構築します。 |
2 | (デストラクタ) unordered_setを破棄します。 |
3 | 演算子= コンテンツを割り当てるために使用されます。 |
容量
シニア番号 | 容量と説明 |
---|---|
1 | 空の コンテナが空かどうかをテストするために使用されます。 |
2 | サイズ コンテナサイズを返します。 |
3 | max_size 最大サイズを返します。 |
イテレータ
シニア番号 | イテレータと説明 |
---|---|
1 | ベギン イテレータを最初に戻します。 |
2 | 終わり イテレータを終了に戻します。 |
3 | cbegin const_iteratorを最初に戻します。 |
4 | cend const_iteratorを終了に戻します。 |
要素ルックアップ
シニア番号 | 要素のルックアップと説明 |
---|---|
1 | 見つける イテレータを要素に移動するために使用されます。 |
2 | カウント 特定のキーを持つ要素をカウントするために使用されます。 |
3 | equal_range 特定のキーを持つ要素の範囲を取得するために使用されます。 |
修飾子
シニア番号 | 修飾子と説明 |
---|---|
1 | 配置する 要素を作成して挿入するために使用されます。 |
2 | emplace_hint ヒント付きの要素を作成して挿入するために使用されます。 |
3 | インサート 要素を挿入するために使用されます。 |
4 | 消去 要素を消去するために使用されます。 |
5 | 晴れ コンテンツをクリアするために使用されます。 |
6 | スワップ コンテンツを交換するために使用されます。 |
バケット
シニア番号 | バケットと説明 |
---|---|
1 | バケットカウント バケットの数を返します。 |
2 | max_bucket_count バケットの最大数を返します。 |
3 | バケットサイズ バケットサイズを返します。 |
4 | バケツ 要素のバケットを見つけます。 |
ハッシュポリシー
シニア番号 | ハッシュポリシーと説明 |
---|---|
1 | 負荷率 負荷率を返します。 |
2 | max_load_factor 最大負荷率を取得または設定するために使用されます。 |
3 | 再ハッシュ バケット数の設定に使用します。 |
4 | リザーブ バックレットの容量変更をリクエストします |
オブザーバー
シニア番号 | オブザーバーと説明 |
---|---|
1 | hash_function ハッシュ関数を取得するために使用されます。 |
2 | key_eq これは、主要な等価述語を取得するために使用されます。 |
3 | get_allocator アロケータを取得するために使用されます。 |
シニア番号 | 非メンバー関数のオーバーロードと説明 |
---|---|
1 | 演算子(unordered_set) ハッシュ関数を取得するために使用されます。 |
2 | スワップ(unordered_set) 2つのunordered_setコンテナの内容を交換します。 |
事前定義されたイテレータ
シニア番号 | 非メンバー関数のオーバーロードと説明 |
---|---|
1 | 演算子(unordered_set) ハッシュ関数を取得するために使用されます。 |
2 | スワップ(unordered_set) 2つのunordered_setコンテナの内容を交換します。 |