C++の標準ライブラリ(STL)について解説します。
言語サポートライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| limits | 実装プロパティ | – | ※執筆中 |
| version | 実装依存のバージョン情報 | C++20 | ※執筆中 |
| stdfloat | 拡張浮動小数点型 | C++23 | ※執筆中 |
| new | 動的メモリ管理 | – | ※執筆中 |
| typeinfo | 型情報 | – | ※執筆中 |
| source_location | ソースコード上の位置 | C++20 | ※執筆中 |
| exception | 例外ハンドリング | – | ※執筆中 |
| initializer_list | 初期化子リスト | C++11 | ※執筆中 |
| compare | 比較演算 | C++20 | ※執筆中 |
| coroutine | コルーチン | C++20 | ※執筆中 |
コンセプトライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| concepts | 言語関係のコンセプト | C++20 | ※執筆中 |
診断ライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| stdexcept | 例外クラス | – | ※執筆中 |
| system_error | システムエラーサポート | C++11 | ※執筆中 |
ユーティリティライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| utility | ユーティリティコンポーネント | – | ※執筆中 |
| bitset | ビットの固定サイズシーケンス | – | ※執筆中 |
| ratio | コンパイル時有理数 | C++11 | ※執筆中 |
| tuple | タプル | C++11 | ※執筆中 |
| optional | 任意で値を持たせられるオブジェクト | C++17 | ※執筆中 |
| variant | 候補の型を切り替えながら保持できる記憶域型 | C++17 | ※執筆中 |
| any | あらゆる型の値を保持できる記憶域型 | C++17 | ※執筆中 |
| expected | 正常値かエラー値のどちらかを持たせられるオブジェクト | C++23 | ※執筆中 |
| type_traits | 型特性 | C++11 | ※執筆中 |
| functional | 関数オブジェクト | – | ※執筆中 |
| memory | メモリ | – | ※執筆中 |
| scoped_allocator | スコープ付きアロケータ | C++11 | ※執筆中 |
| memory_resource | 多相アロケータ | C++17 | ※執筆中 |
| chrono | 時間ユーティリティ | C++11 | ※執筆中 |
| typeindex | 型のインデックス | C++11 | ※執筆中 |
| execution | 実行ポリシー、実行制御ライブラリ(C++26) | C++17 | ※執筆中 |
| charconv | 高速な文字列 ⇔ 数値変換 | C++17 | ※執筆中 |
| format | 文字列フォーマット | C++20 | ※執筆中 |
| stacktrace | スタックトレース | C++23 | ※執筆中 |
文字列ライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| string | 文字列クラスと、文字特性 | – | stringクラスの使い方 |
| string_view | 所有権を持たず文字列を参照する文字列クラス | C++17 | ※執筆中 |
ローカライズライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| locale | ロケール | – | ※執筆中 |
| text_encoding | 文字列エンコーディングの識別 | C++23 | ※執筆中 |
| codecvt | コード変換ファセット | C++11 C++17から非推奨 C++23で削除 | ※執筆中 |
コンテナライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| array | 配列 | C++11 | ※執筆中 |
| deque | 両端キュー | – | ※執筆中 |
| forward_list | 単方向リスト | C++11 | ※執筆中 |
| list | 双方向リスト | – | ※執筆中 |
| queue | FIFOキュー | – | ※執筆中 |
| stack | LIFOスタック | – | ※執筆中 |
| vector | 可変長配列 | – | vectorクラスの使い方 |
| inplace_vector | 容量固定の可変長配列 | C++26 | ※執筆中 |
| map | 順序付き連想配列 | – | ※執筆中 |
| set | 順序付き集合 | – | ※執筆中 |
| flat_map | ソート済みキーによる順序付き連想配列 | C++23 | ※執筆中 |
| flat_set | ソート済みキーによる順序付き集合 | C++23 | ※執筆中 |
| unordered_map | 非順序連想配列 | C++11 | ※執筆中 |
| unordered_set | 非順序集合 | C++11 | ※執筆中 |
| span | 部分シーケンスの参照 | C++20 | ※執筆中 |
| mdspan | 多次元配列ビュー | C++23 | ※執筆中 |
イテレータライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| iterator | イテレータの定義 | – | ※執筆中 |
レンジライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| ranges | レンジアルゴリズム | C++20 | ※執筆中 |
| generator | コルーチンによるレンジ生成 | C++23 | ※執筆中 |
アルゴリズムライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| algorithm | アルゴリズム | – | ※執筆中 |
数値ライブラリ
デバッグライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| debugging | デバッグサポート | C++26 | ※執筆中 |
| contracts | 契約プログラミング | C++26 | ※執筆中 |
入出力ライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| iosfwd | 先行宣言 | – | ※執筆中 |
| iostream | 標準iostreamオブジェクト | – | ※執筆中 |
| ios | iostream基底クラス | – | ※執筆中 |
| streambuf | ストリームバッファ | – | ※執筆中 |
| istream | 入力ストリーム | – | ※執筆中 |
| ostream | 出力ストリーム | – | ※執筆中 |
| iomanip | フォーマットとマニピュレータ | – | ※執筆中 |
| sstream | 文字列ストリーム | – | ※執筆中 |
| strstream | 古い文字列ストリーム | C++98から非推奨 C++26で削除 | ※執筆中 |
| fstream | ファイルストリーム | – | ※執筆中 |
| filesystem | ファイルシステム | C++17 | ※執筆中 |
| syncstream | 同期化出力ストリームラッパー | C++20 | ※執筆中 |
| spanstream | メモリバッファの所有権をもたないストリーム | C++23 | ※執筆中 |
| print | 書式指定による出力 | C++23 | ※執筆中 |
正規表現ライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| regex | 正規表現 | C++11 | ※執筆中 |
アトミック操作ライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| atomic | アトミックアクセスのためのコンポーネント | C++11 | ※執筆中 |
| stdatomic.h | アトミック操作のC互換ライブラリ | C++23 | ※執筆中 |
スレッドサポートライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| stop_token | 停止状態 | C++20 | ※執筆中 |
| thread | スレッド | C++11 | ※執筆中 |
| mutex | ミューテックス | C++11 | ※執筆中 |
| shared_mutex | 共有ミューテックス | C++14 | ※執筆中 |
| condition_variable | 条件変数 | C++11 | ※執筆中 |
| semaphore | セマフォ | C++20 | ※執筆中 |
| latch | ラッチ同期 | C++20 | ※執筆中 |
| barrier | バリア同期 | C++20 | ※執筆中 |
| future | Future | C++11 | ※執筆中 |
| rcu | データの参照・更新 | C++26 | ※執筆中 |
| hazard_pointer | ハザードポインタ | C++26 | ※執筆中 |
| simd | データ並列 | C++26 | ※執筆中 |
C言語互換ライブラリ
| ヘッダ名 | 説明 | 対応バージョン | 関連記事 |
|---|
| cassert | アサート | – | ※執筆中 |
| ccomplex | 複素数 | C++11 (C99) C++17で非推奨 C++20で削除 | ※執筆中 |
| cctype | 文字種別の判定と変換 | – | ※執筆中 |
| cerrno | エラー番号 | – | ※執筆中 |
| cfenv | 浮動小数点環境へのアクセス | C++11 (C99) | ※執筆中 |
| cfloat | 浮動小数点数の定数 | – | ※執筆中 |
| cinttypes | 固定精度整数のための書式指定マクロ | C++11 (C99) | ※執筆中 |
| ciso646 | &&に対する別名andのような、各種演算子に対するマクロを定義する。 ただしC++ではこれらの別名はキーワードとして定義されるため、このヘッダでは何も定義されない。 | C++20で削除 | ※執筆中 |
| climits | 整数型の最小値、最大値を表すマクロ | – | ※執筆中 |
| clocale | ロケール | – | ※執筆中 |
| cmath | 数学関数 | – | ※執筆中 |
| csetjmp | ジャンプ処理 | – | ※執筆中 |
| csignal | シグナル | – | ※執筆中 |
| cstdalign | アライメント操作のマクロ | C++17で非推奨 C++20で削除 | ※執筆中 |
| cstdarg | 可変引数操作 | – | ※執筆中 |
| stdbit.h | ビット操作 | C++26 | ※執筆中 |
| stdckdint.h | 検査付き整数演算 | C++26 | ※執筆中 |
| cstdbool | 真理値型の定義 | C++11 (C99) C++17で非推奨 C++20で削除 | ※執筆中 |
| cstddef | 基本的な型、値、マクロの定義 | – | ※執筆中 |
| cstdint | 大きさが規定されている整数型 | C++11 (C99) | ※執筆中 |
| cstdio | 入出力 | – | ※執筆中 |
| cstdlib | ユーティリティ関数 | – | ※執筆中 |
| cstring | 文字列操作 | – | ※執筆中 |
| ctgmath | ジェネリックな数学関数 | C++11 (C99) C++17で非推奨 C++20で削除 | ※執筆中 |
| ctime | 日付・時間 | – | ※執筆中 |
| cuchar | Unicode文字型 | C++11 (C99) | ※執筆中 |
| cwchar | ワイド文字型 | – | ※執筆中 |
| cwctype | ワイド文字の種別と判定 | – | ※執筆中 |