標準C++ライブラリ
出典: フリー百科事典『ウィキペディア(Wikipedia)』
標準C++ライブラリは、C++の標準規格で定められたライブラリである。これはクラスと関数などの集合であり、汎用的なコンテナとそれを操作する関数、関数オブジェクト、汎用的な文字列とストリーム(コンソールやファイルとの入出力)、言語機能サポート、平方根を求めるなどといった日用的な関数などから構成される。また、ISO C90の標準Cライブラリも含んでいる。標準C++ライブラリはそのほとんどが名前空間std内にある。
Standard Template Library (STL)は標準C++ライブラリの一部分で、コンテナ、アルゴリズム、イテレータ、関数オブジェクトなどを含むものである。中にはSTLという言葉を標準C++ライブラリと混同して使う者もいる。
標準C++ライブラリのヘッダには末尾に.hが付かない。
目次 |
ヘッダ[編集]
次に挙げるヘッダが存在する。末尾に (*) が付いているものは C++11 で増えたもの。
コンテナ[編集]
- <array> (*)
- <bitset>
- <deque>
- <forward_list> (*)
- <initializer_list> (*)
- <list>
- <map>
- <queue>
- <set>
- <stack>
- <tuple> (*)
- <unordered_set> (*)
- <unordered_map> (*)
- <vector>
一般[編集]
- <algorithm>
- <chrono> (*)
- <codecvt> (*)
- <functional>
- <iterator>
- <locale>
- <memory>
- <stdexcept>
- <utility>
文字列[編集]
ストリームと入出力[編集]
- <fstream>
- <ios>
- <iostream>
- <iosfwd>
- <iomanip>
- <istream>
- <ostream>
- <sstream>
- <strstream> - deprecated、sstream 推奨
- <streambuf>
数値処理[編集]
言語支援[編集]
スレッド[編集]
標準Cライブラリ[編集]
詳細は「標準Cライブラリ」を参照
C++において標準Cライブラリのヘッダは、Cと異なった名前になる。ヘッダ名に末尾から.hを取り除き、先頭にcを加えるのである。例えばtime.hはctimeという具合である。そしてヘッダ内の宣言は名前空間stdの中に置かれるため、名前空間の影響を受けないマクロを除く、関数や型名にはstd::を付けるなどしなければならない。なお、ISO Cでは関数をマクロとして実装することも認めていたが、ISO C++では認められていない。
- <cassert>
- <cctype>
- <cerrno>
- <cfenv> (*)
- <cfloat>
- <climits>
- <cmath>
- <csetjmp>
- <csignal>
- <cstdlib>
- <cstddef>
- <cstdarg>
- <cuchar> (*)
- <ctime>
- <cstdio>
- <cstring>
- <cwchar>
- <cwctype>
外部リンク[編集]
- Rogue Wave 標準 C++ ライブラリ・ユーザーズガイド
- Microsoft MSDN Library - Standard C++ Library Reference(英語)
- C++ Standard Library reference(英語)
参考文献[編集]
- 『プログラミング言語C++第3版』(1998) ビャーネ・ストロヴストルップ著 長尾高弘訳 アジソンウェスレイパブリッシャーズジャパン ISBN 978-4756118950