C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++標準ライブラリヘッダーファイル


C ++標準ライブラリは、さまざまなタイプのライブラリで構成されています。以下は、これらすべてのタイプとその下のライブラリのリストです。

ユーティリティライブラリ

−プログラム制御、動的メモリ割り当て、乱数、並べ替え、検索などの汎用ユーティリティ

−信号管理用の関数とマクロ定数(例:SIGINTなど)

−実行コンテキストに保存(およびジャンプ)するマクロ(および関数)

−可変長引数リストの処理

−実行時型情報ユーティリティ

<ビットセット> − std ::bitset

のクラステンプレート

<機能> −関数オブジェクト、関数呼び出し、バインド操作、および参照ラッパー

<ユーティリティ> −さまざまなユーティリティコンポーネント

−Cスタイルの時間/日付ユーティリティ

−標準のマクロとtypedef

(C ++ 11以降) −type_infoオブジェクトのラッパー。これは、連想コンテナと順序付けされていない連想コンテナのインデックスとして使用できます

(C ++ 11以降) −コンパイル時のタイプ情報

<クロノ>(C ++ 11以降) −C++の時間利用

(C ++ 11以降) -constT型のオブジェクトの配列へのアクセスを提供する軽量プロキシオブジェクトを定義するライブラリ。

<タプル>(C ++ 11以降) −異種値の固定サイズのコレクションを定義するライブラリ。これはstd::pairの一般化です。

(C ++ 17以降) −クラスanyは、任意のタイプの単一値のタイプセーフコンテナを記述します。

<オプション>(C ++ 17以降) −クラステンプレートstd ::optionalは、オプションの含まれる値、つまり存在する場合と存在しない場合がある値を管理します。

<バリアント>(C ++ 17以降) -クラステンプレートstd::Variantは、タイプセーフなユニオンを表します。 std ::バリアントのインスタンスは、いつでもその代替タイプの1つの値を保持するか、エラーの場合は値を保持しません。

<比較>(C ++ 20以降) −3者間比較演算子のサポートを可能にします

動的メモリ管理

<新規> −低レベルのメモリ管理ユーティリティ。 new-expressionは、動的な保存期間、つまり、作成されたスコープに制限されない存続期間を持つオブジェクトまたはオブジェクトの配列を作成する唯一の方法です。

<メモリ> −高レベルのメモリ管理ユーティリティ

(C ++ 11以降) − std ::scoped_allocator_adaptorクラステンプレートは、マルチレベルコンテナ(マップのタプルのリストのセットのベクトルなど)で使用できるアロケータです。

(C ++ 17以降) -クラスstd::pmr ::memory_resourceは、メモリリソースをカプセル化する無制限のクラスセットへの抽象インターフェイスです。

数値制限

−整数型の制限

−フロートタイプの制限

<制限> -算術型のプロパティを照会するための標準化された方法

(C ++ 11以降) −固定サイズのタイプと他のタイプの制限

(C ++ 11以降) −Cバイトおよびワイド文字列からstd::intmax_tおよびstd::uintmax_tへの変換を提供し、std ::intmax_tの一部の数学関数をオーバーロードし、で宣言されたタイプのCスタイルの入出力形式マクロを提供します。

> エラー処理

<例外> −例外処理ユーティリティ

-標準の例外オブジェクト

<カセット> -引数をゼロと比較する条件付きでコンパイルされたマクロ

-最後のエラー番号を含むマクロ

(C ++ 11以降) −std ::error_codeは、プラットフォームに依存するエラーコードです。各std::error_codeオブジェクトは、オペレーティングシステムまたは低レベルのインターフェイスから発生したエラーコードと、そのインターフェイスに対応するstd::error_categoryタイプのオブジェクトへのポインタを保持します。

文字列ライブラリ

−文字データに含まれるタイプを判別する関数

−ワイド文字データに含まれるタイプを判別する関数

−さまざまな狭い文字列処理関数

-さまざまなワイドおよびマルチバイト文字列処理関数

−std::basic_stringクラステンプレート

(C ++ 11以降) −CスタイルのUnicode文字変換関数

(C ++ 17以降) −クラステンプレートbasic_string_viewは、シーケンスの最初の要素がゼロの位置にある、charのようなオブジェクトの一定の連続したシーケンスを参照できるオブジェクトを記述します。

コンテナライブラリ

(C ++ 11以降) − std::arrayコンテナ

<ベクター> − std::vectorコンテナ

− std::dequeコンテナ

<リスト> − std::listコンテナ

(C ++ 11以降) − std::forward_listコンテナ

<セット> − std::setおよびstd::multiset連想コンテナ

<マップ> − std::mapおよびstd::multimap連想コンテナ

(C ++ 11以降) − std::unordered_setおよびstd::unordered_multisetunorderedアソシアティブコンテナ

(C ++ 11以降) − std::unordered_mapおよびstd::unordered_multimap順序付けされていない連想コンテナ

<スタック> − std::stackコンテナアダプター

<キュー> − std::queueおよびstd::priority_queueコンテナアダプター

アルゴリズムライブラリ

<アルゴリズム> −コンテナで動作するアルゴリズムが含まれています

<実行>(C ++ 17) -アルゴリズムの並列バージョンの事前定義された実行ポリシー

イテレータライブラリ

<イテレータ> −コンテナのイテレータ

数値ライブラリ

−一般的な数学関数

<複雑> −複素数タイプ

−値の配列を表現および操作するためのクラス

<ランダム>(C ++ 11以降) −乱数の生成と分布

<数値> −コンテナ内の値に対する数値演算

<比率>(C ++ 11以降) −コンパイル時の有理演算

(C ++ 11以降) −浮動小数点環境アクセス機能

入力/出力ライブラリ

−入出力ライブラリ内のすべてのクラスの前方宣言

− std ::ios_baseクラス、std::basic_iosクラステンプレートおよびいくつかのtypedef

− std::basic_istreamクラステンプレートといくつかのtypedef

− std ::basic_ostream、std::basic_iostreamクラステンプレートといくつかのtypedef

−いくつかの標準ストリームオブジェクト

− std ::basic_fstream、std ::basic_ifstream、std::basic_ofstreamクラステンプレートといくつかのtypedef

− std ::basic_stringstream、std ::basic_istringstream、std::basic_ostringstreamクラステンプレートといくつかのtypedef

(C ++ 20以降) − std ::basic_osyncstream、std ::basic_syncbuf、およびtypedefs

(非推奨) − std ::strstream、std ::istrstream、std ::ostrstream

−フォーマットまたは入出力を制御するヘルパー関数

− std::basic_streambufクラステンプレート

−Cスタイルの入出力関数

ローカリゼーションライブラリ

<ロケール> −ローカリゼーションユーティリティ

−Cローカリゼーションユーティリティ

(C ++ 11以降)(C ++ 17では非推奨) −Unicode変換機能

正規表現ライブラリ

<正規表現>(C ++ 11以降) −正規表現処理をサポートするクラス、アルゴリズム、およびイテレータ

不可分操作ライブラリ

<アトミック>(C ++ 11以降) −不可分操作ライブラリ

スレッドサポートライブラリ

<スレッド>(C ++ 11以降) − std::threadクラスとサポート関数

(C ++ 11以降) −相互排除プリミティブ

(C ++ 14以降) −共有相互排除プリミティブ

(C ++ 11以降) -非同期計算のプリミティブ

(C ++ 11以降) −スレッド待機条件

ファイルシステムライブラリ

<ファイルシステム>(C ++ 17以降) − std::pathクラスとサポート関数


  1. C ++標準テンプレートライブラリ(STL)でのバイナリ検索

    対数探索と呼ばれる二分探索は、ソートされた配列内の要素を検索する検索アルゴリズムです。アルゴリズムは、配列を再帰的に2つに分割します。要素が中央の位置にある場合は戻り、それ以外の場合は除算を呼び出して、要素が見つかるまで再度確認します。 動作中 このアルゴリズムは、並べ替えられた配列の中央の要素を検索対象の要素と比較することで機能します。 検索要素が等しいの場合 真ん中の要素に移動し、インデックスを返す 要素の。 検索要素が大きい場合 中央の要素よりも、左側のサブ配列を検索 つまり、配列の中央から最後までの次の要素からのサブ配列。 検索要素が少ない場合 真ん中の要素よりも、右のサブ配列

  2. C ++標準テンプレートライブラリ(STL)の優先キュー

    優先度キューは、優先度に基づいて要素の挿入と削除をサポートする優先度の高い要素のコレクションを格納するための抽象データ型です。つまり、優先度の高い要素はいつでも削除できます。優先度付きキューは、スタック、キュー、リストなどの場所に関して要素を線形に格納しません。優先度付きキューADT(抽象データ型)は、優先度に基づいて要素を格納します。 優先キューは次の機能をサポートします − サイズ() −優先キュー内の要素数を返すため、優先キューのサイズを計算するために使用されます。 Empty() −優先キューが空の場合はtrueを返し、そうでない場合はfalseを返します 挿入(要素) −