STL(Standard Template Library)とは、データを格納するコンポーネントと、そのコンポーネントを
操作するためのアルゴリズム群であり、C++の標準の機能である。
コンポーネントには、「ベクター」、「リスト」、「キュー」、「スタック」をはじめさまざまな
コンポーネントが標準で用意されている。それぞれ一長一短で、用途によって使い分けることができる。
また自分で作成することもできる。
また、アルゴリズムには「データの追加」、「ソート」、「検索」など有用なアルゴリズムが
用意されている。
これらは、int型、char型、ポインタ型など言語自体で定義されている型以外にも、自分で定義した
構造体やクラスなどを扱うことも可能である。
このようなコンポーネントとアルゴリズムを組みあわせることにより、自分でデータ格納や
データ整理などに関する関数やクラスを作らなくてもよいため、プログラムの部品化が可能で、
再利用性の高いプログラムを作ることができる。
MFCでは、リストやベクターなどのクラスが定義されているが、MFCは当然Windows上でのみ
使用できる。これに対して、STLでは、C++の機能であるため、他のOSでも使用することができる。