C++Intro - Man Page

Introduction to the GNU libstdc++ man pages

Description

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:

C++IntroThis page.
Namespace_stdA listing of the contents of std::.
Namespace___gnu_cxxA listing of the contents of __gnu_cxx::.
ContainersAn introduction to container classes.
SequencesLinear containers.
Assoc_containersKey-based containers.
Iterator_typesProgramatically distinguishing iterators/pointers.
Intro_functorsAn introduction to function objects, or functors.
Arithmetic_functorsFunctors for basic math.
Binder_functorsFunctors which "remember" an argument.
Comparison_functorsFunctors wrapping built-in comparisons.
Func_ptr_functorsFunctors for use with pointers to functions.
Logical_functorsFunctors wrapping the Boolean operations.
Member_ptr_functorFunctors for use with pointers to members.
Negation_functorsFunctors which negate their contents.
SGIextensionsA list of the extensions from the SGI STL subset.

The HTML documentation typically goes into much more depth.

Files

Lots!

Standard Headers

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>

Backwards-Compatibility Headers

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.

<strstream>

Extension Headers

These headers will only be found automatically if you include the leading ext/ in the name.  Otherwise you need to read FAQ 5.4.

<ext/algorithm>            <ext/numeric>            
<ext/functional>           <ext/iterator>
<ext/slist>                <ext/rb_tree>  
<ext/rope>                 <ext/memory>              
<ext/bitmap_allocator.h>   <ext/debug_allocator.h>    
<ext/malloc_allocator.h>   <ext/mt_allocator.h>    
<ext/pool_allocator.h>     <ext/pod_char_traits.h>    
<ext/stdio_filebuf.h>      <ext/stdio_sync_filebuf.h>

Libraries

libstdc++.a

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.

libsupc++.a

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.

libstdc++.so[.N]

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.

libstdc++.la
libsupc++.la

These are Libtool library files, and should only be used when working with that tool.

Conforming to

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.

See Also

http://gcc.gnu.org/libstdc++/ for the Frequently Asked Questions, online documentation, and much, much more!

Info

20 May 2004 GNU libstdc++ Standard C++ Library