最終更新日時:
が更新

履歴 編集

<set>

set

<set>ヘッダは、集合を表す連想コンテナ、setmultisetを定義する。
setはキーの重複を許可しないが、multisetはキーの重複を許可する。

連想コンテナは特にそれらキーによる要素アクセスが効率的になるようよう設計されたコンテナである(要素への相対位置または絶対位置によるアクセスが効率的であるシーケンシャルコンテナとは異なる)。 内部的には、set 内の要素は、コンテナの構築時に設定された狭義の弱順序基準に従って小さいものから大きいものへとソートされる。

setmultisetは一般的に、二分木として実装される。従って、連想コンテナである setmultiset の主な特性は以下の通りである。

  • ユニークな要素のキー:互いに等しい二つのキーを持つ要素が set に格納されることは無い。複数の等しいキーを許す同様の連想コンテナは multiset である。
  • 要素の値はキーと値のpair型である。
  • 要素は常に狭義の弱順序に従う。
  • 挿入操作はイテレータや要素の参照に影響を与えない。

このコンテナクラスは、双方向イテレータをサポートする。

名前 説明 対応バージョン
set キーの重複を許可しない集合(class template)
multiset キーの重複を許可する集合(class template)