This man page serves as a brief introduction to the GNU implementation of the Standard C++ Library. For a better introduction and more complete documentation, see the libstdc++ homepage listed at the end.
All standard library entities are declared within namespace std and have manual entries beginning with "std::". For example, to see documentation of the template class std::vector one would use "man std::vector". Some entities do not have a separate man page; for those see the main listing in "man Namespace_std".
All the man pages are automatically generated by Doxygen. For more information on this tool, see the HTML counterpart to these man pages.
Some man pages do not correspond to individual classes or functions. Rather they describe categories of the Standard Library. (For a more thorough introduction to the various categories, consult a text such as Josuttis' or Austern's.) These category pages are:
|Namespace_std||A listing of the contents of std::.|
|Namespace___gnu_cxx||A listing of the contents of __gnu_cxx::.|
|Containers||An introduction to container classes.|
|Iterator_types||Programatically distinguishing iterators/pointers.|
|Intro_functors||An introduction to function objects, or functors.|
|Arithmetic_functors||Functors for basic math.|
|Binder_functors||Functors which "remember" an argument.|
|Comparison_functors||Functors wrapping built-in comparisons.|
|Func_ptr_functors||Functors for use with pointers to functions.|
|Logical_functors||Functors wrapping the Boolean operations.|
|Member_ptr_functor||Functors for use with pointers to members.|
|Negation_functors||Functors which negate their contents.|
|SGIextensions||A list of the extensions from the SGI STL subset.|
The HTML documentation typically goes into much more depth.
These headers will be found automatically, unless you instruct the compiler otherwise.
|<algorithm> <csignal> <iomanip> <ostream>|
|<bitset> <cstdarg> <ios> <queue>|
|<cassert> <cstddef> <iosfwd> <set>|
|<cctype> <cstdio> <iostream> <sstream>|
|<cerrno> <cstdlib> <istream> <stack>|
|<cfloat> <cstring> <iterator> <stdexcept>|
|<ciso>646 <ctime> <limits> <streambuf>|
|<climits> <cwchar> <list> <string>|
|<clocale> <cwctype> <locale> <utility>|
|<cmath> <deque> <map> <valarray>|
|<complex> <fstream> <memory> <vector>|
|<csetjmp> <functional> <numeric>|
For GCC 3.0 these headers will be found automatically, unless you instruct the compiler otherwise. You should not depend on this, instead you should read FAQ 5.4 and use a backward/ prefix.
These headers will only be found automatically if you include the leading ext/ in the name. Otherwise you need to read FAQ 5.4.
The library implementation in static archive form. If you did not configure libstdc++ to use shared libraries, this will always be used. Otherwise it will only be used if the user requests it.
This library contains C++ language support routines. Usually you will never need to know about it, but it can be useful. See FAQ 2.5.
The library implementation in shared object form. This will be used in preference to the static archive form by default. N will be a number equal to or greater than 3. If N is in the 2.x series, then you are looking at the old libstdc++-v2 library, which we do not maintain.
These are Libtool library files, and should only be used when working with that tool.
Almost conforming to International Standard ISO/IEC 14882:1998(E), Programming Languages --- C++ (aka the C++ standard), in addition to corrections proposed by the Library Working Group, JTC1/SC22/WG21.
http://gcc.gnu.org/libstdc++/ for the Frequently Asked Questions, online documentation, and much, much more!