- hive[meta header]
- cpp26[meta cpp]
<hive>ヘッダでは、要素のメモリ位置が安定したシーケンスコンテナであるhiveを提供する。
hiveは、要素の挿入・削除を定数時間で行いつつ、削除されなかった要素のポインタ・参照・イテレータを無効化しないコンテナである。要素は複数のメモリブロック(要素ブロック)に格納され、削除された要素の位置はスキップされる。挿入位置はコンテナが決定するため、要素の順序は指定できない。
このヘッダでは、以下の標準ヘッダをインクルードする:
<initializer_list>(C++11)<compare>(C++20)
| 名前 | 説明 | 対応バージョン |
|---|---|---|
hive |
要素のメモリ位置が安定したシーケンスコンテナ (class template) | C++26 |
hive_limits |
要素ブロックの容量の下限・上限を指定する構造体 (class) | C++26 |
swap |
2つのhiveオブジェクトを入れ替える (function template) |
C++26 |
erase |
指定した値の要素を削除する (function template) | C++26 |
erase_if |
条件を満たす要素を削除する (function template) | C++26 |
std::pmr名前空間には、以下の型の別名が定義される。
| 名前 | 説明 | 対応バージョン |
|---|---|---|
pmr::hive |
アロケータとしてpmr::polymorphic_allocatorを使用するhiveの別名 (alias template) |
C++26 |
- C++26
- Clang: 22 [mark noimpl]
- GCC: 16.1 [mark noimpl]
- Visual C++: 2026 Update 2 [mark noimpl]
- P0447R28 Introduction of
std::hiveto the standard library- C++26で
<hive>ヘッダが追加された
- C++26で