Translations of this page?:

C++ 標準テンプレートライブラリ

C++ STL (標準テンプレートライブラリ)はクラステンプレートとアルゴリズムの標準コレクションであり、プログラマが容易にキュー、リスト、スタックというような標準的なデータ構造を実装することを可能にします。

STL コンテナ

C++ STLでは2種類のコンテナを提供します:


さらにC++標準ライブラリではいくつかのSTLではないコンテナを提供しています。それらはコンテナの様に捉えることもできますか、STLコンテナのすべての要件を満たしているわけではありません。


C++ STLの背景にある思想は、複雑なデータ構造を使う際の難しい部分は既に実装済みであるという点です。 もしプログラマが整数のスタックを使いたければ、次のコードを書くだけでよいのです。

  stack<int> myStack;

最小限の努力で、このスタックに対して整数をpushpopできるのです。 C++テンプレートの魔法によって、整数だけでなくすべてのデータ型を使うことができます。 STLスタッククラスによってスタック内のデータに関係なく、一般的なスタックの機能を利用することができます。

アルゴリズム

上記に加え、STLでは多くの便利なアルゴリズムも提供しています。–例えば binary_searchsortfor_eachなどがあり、 これらは様々なコンテナやデータ構造において使うことができます。

イテレータ

C++ イテレータ STLコンテナや他のデータ構造に対してイテレーションを可能にします。

関数オブジェクト

<functional> ヘッダファイルでは関数オブジェクトや関数アダプタを定義しています。

メモリ

<memory> ヘッダファイルではauto_ptrのような簡素なメモリ管理構造を提供しています。

ユーティリティ

<utility> ヘッダファイル内のmake_pairのような一般的なユーティリティメソッドもいくつかあります。

 
• • • IndexRecent changesRSScc