C ++ライブラリ-<セット>

前書き

A setキータイプの一意のオブジェクトのソートされたセットを含む連想コンテナです。各要素は1回だけ発生する可能性があるため、重複は許可されません。

連想コンテナには、セット、マルチセット、マップ、マルチマップの4種類があります。

セット内の要素の値は、コンテナ内で一度変更することはできません。つまり、要素は常にconstです。ただし、コンテナに挿入したり、コンテナから削除したりすることはできます。

setコンテナーは、通常、キーによる個々の要素へのアクセスにおいてunordered_setコンテナーよりも低速ですが、順序に基づいてサブセットを直接反復できます。

定義

以下は、<set>ヘッダーファイルからのstd :: setの定義です。

template < 
    class Key,
    class Compare = std::less<Key>,
    class Allocator = std::allocator<Key>
> class set;

パラメーター

  • Key −含まれている要素のタイプ。

    キーは、ユーザー定義型を含む他のデータ型に置き換えることができます。

メンバータイプ

以下のメンバータイプは、パラメーターとして使用したり、メンバー関数によってタイプを返すことができます。

シニア番号 メンバータイプ 定義
1 key_type キー
2 value_type キー
3 参照 アロケーター::リファレンス

value_type&

4 const_reference Allocator :: const_reference

const value_type&

5 ポインター アロケーター::ポインター

std :: allocator_traits <Allocator> :: pointer

6 const_pointer Allocator :: const_pointer

std :: allocator_traits <Allocator> :: const_pointer

7 イテレータ BidirectionIterator
8 const_iterator 一定の双方向Iterator
9 reverse_iterator std :: reverse_iterator <イテレータ>
10 const_reverse_iterator std :: reverse_iterator <const_iterator>
11 size_type 符号なし整数型(std :: size_t)
12 Difference_type 符号付き整数型(std :: ptrdiff_t)
13 key_compare 比較する
14 value_compare 比較する
15 allocator_type アロケーター

<set>からの関数

以下は、<set>ヘッダーのすべてのメソッドのリストです。

メンバー機能

DEFAULT MEMBER FUNCTIONS

シニア番号 方法と説明
1 デフォルトのコンストラクタ

セットコンテナを構築します。

2 範囲コンストラクター

範囲の内容でセットコンテナを構築します。

3 コピーコンストラクタ

他のセットのコピーを使用してセットコンテナを構築します。

4 コンストラクターを移動します

移動セマンティクスを使用して、他のセットのコンテンツでセットコンテナを構築します。

5 イニシャライザリストコンストラクタ

初期化リストの内容を使用してセットコンテナを構築します。

6 (デストラクタ)

セットされたコンテナを破棄します。

7 演算子=

セットされたコンテナに値を割り当てます。

イテレータ

シニア番号 方法と説明
1 set :: begin

イテレータを最初に戻します。

2 set :: cbegin

定数イテレータを最初に戻します。

3 set :: end

終了するイテレータを返します。

4 set :: cend

終了する定数イテレータを返します。

5 set :: rbegin

逆イテレータを逆開始に戻します。

6 set :: crbegin

constリバースイテレータをリバース開始に戻します。

7 set :: rend

リバースイテレータをリバースエンドに戻します。

8 set :: crend

constリバースイテレータをリバースエンドに戻します。

容量

シニア番号 方法と説明
1 set :: empty

セットされたコンテナが空であるかどうかを返します。

2 セット::サイズ

セットコンテナ内の要素の数を返します。

3 set :: max_size

セットコンテナが保持できる要素の最大数を返します。

モディファイア

シニア番号 方法と説明
1 セット::クリア

セットコンテナからすべての要素を削除します。

2 セット::挿入

セットコンテナに新しい要素を挿入します。

3 set :: emplace

一意の場合は、セットに新しい要素を挿入します。

4 set :: emplace_hint

セットに新しい要素が一意である場合は、挿入位置のヒントを付けて挿入します。

5 セット::消去

セットコンテナから単一の要素または要素の範囲を削除します。

6 set :: swap

コンテナの内容を、同じタイプの別のセットコンテナの内容と交換します。

調べる

シニア番号 方法と説明
1 set :: count

セットコンテナ内の値が一致する要素の数を返します。

2 set :: find

セットコンテナで値を検索し、見つかった場合はイテレータを返します。それ以外の場合は、set :: endにイテレータを返します。

3 set :: lower_bound

値の前にあるとは見なされない、セットコンテナ内の最初の要素を指すイテレータを返します。

4 set :: upper_bound

値の後にあると見なされるセットコンテナの最初の要素を指すイテレータを返します。

5 set :: equal_range

値と同等のセットコンテナ内のすべての要素を含む範囲の境界を返します。

オブザーバー

シニア番号 方法と説明
1 set :: key_comp

セットコンテナが使用する比較オブジェクトのコピーを返します。

2 set :: value_comp

セットコンテナが使用する比較オブジェクトのコピーを返します。

アロケーター

シニア番号 方法と説明
1 set :: get_allocator

セットコンテナに関連付けられているアロケータオブジェクトのコピーを返します。