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