summaryrefslogtreecommitdiff
path: root/libstdc++-v3/doc/doxygen/Intro.3
blob: 35fdb1384ef41f981b0aa8bfaf81e4003b82566a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
.\" t
.\" This man page is released under the GPL as part of libstdc++.
.TH C++Intro 3 "20 May 2004" "GNU libstdc++" "Standard C++ Library"
.SH NAME
C++Intro \- Introduction to the GNU libstdc++ man pages
.SH 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
.B libstdc++
homepage listed at the end.
.P
All standard library entities are declared within
.I namespace std
and have manual entries beginning with "std::".  For example, to see
documentation of the template class
.I 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".
.P
All the man pages are automatically generated by Doxygen.  For more
information on this tool, see the HTML counterpart to these man pages.
.P
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:
.P
.\" These are separated by ONE TAB.  Nothing else.  I don't like it either.
.TS
lB l.
C++Intro	This page.
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.
Sequences	Linear containers.
Assoc_containers	Key-based containers.
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.

.TE
.P
The HTML documentation typically goes into much more depth.
.SH FILES
Lots!
.SS Standard Headers
These headers will be found automatically, unless you instruct the compiler
otherwise.
.TS
lB lB lB lB.
<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>
.TE
.SS 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
.B backward/
prefix.
.TS
lB lB lB lB.
<strstream>
.TE
.SS Extension Headers
These headers will only be found automatically if you include the leading
.B ext/
in the name.  Otherwise you need to read FAQ 5.4.
.\" Easy way to generate these columns of headers is to use GNU ls(1):
.\" ls -w 40 file1 file2... | sed 's=[a-z_][a-z_]*=<ext/&>=g'
.TS
lB lB.
<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>
.TE
.SS Libraries
.TP
.I 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.
.TP
.I 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.
.TP
.I 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.
.TP
.I libstdc++.la
.TP
.I libsupc++.la
These are Libtool library files, and should only be used when working with
that tool.
.SH CONFORMING TO
Almost conforming to
.BI "International Standard ISO/IEC 14882:1998(E), " "Programming Languages --- C++"
(aka the C++ standard), in addition to corrections proposed by the Library
Working Group,
.SM JTC1/SC22/WG21.
.SH SEE ALSO
.UR
http://gcc.gnu.org/libstdc++/
.UE
for the Frequently Asked Questions, online documentation, and much, much more!
.\" vim:ts=8:noet: