style.css: Update.
[official-gcc.git] / libstdc++-v3 / docs / html / documentation.html
blob8c40fb01e4d95e45dd524704e52a18d9fb191428
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html
3 PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7 <head>
8 <meta name="KEYWORDS"
9 content="libstdc++, homepage, home, C++, library, c++, std, g++, ABI, STL" />
10 <title>GNU C++ Standard Library</title>
11 <link rel="StyleSheet" href="lib3styles.css" />
12 </head>
13 <body>
16 <p><strong>All of these documents</strong> (in fact, this entire homepage set)
17 are bundled with the library source, under the <code>docs</code>
18 subdirectory, for releases and snapshots. The sole exception is the
19 automatically-generated source documentation, available separately.
20 </p>
22 <hr />
23 <br />
24 <h2><a name="1">Introduction</a></h2>
25 <p>This is a short list of text files pertaining to this implementation of
26 ISO 14882. A brief description may follow the name of the file.
27 </p>
28 <ul>
29 <li><a href="17_intro/COPYING">License</a>
30 - GPL v2 license terms</li>
31 <li><a href="abi.txt">ABI Policy and Guidelines</a></li>
32 <li><a href="17_intro/BUGS">BUGS</a></li>
33 <li><a href="17_intro/PROBLEMS">PROBLEMS</a>
34 - target-specific known issues</li>
35 <!-- Linking to "../README" doesn't work; we are at the top level
36 of the web pages. Punt. -->
37 <li>README - directory structure</li>
38 <li><a href="17_intro/RELEASE-NOTES">RELEASE-NOTES</a>
39 - latest version info, recent changes and news</li>
40 <li><a href="17_intro/TODO">TODO</a>
41 - tasks yet undone</li>
42 </ul>
44 <hr />
45 <br />
46 <h2><a name="2">Configuring, Building, Installing</a></h2>
47 <ul>
48 <li><a href="configopts.html">Configure options</a></li>
49 <li><a href="install.html">Getting started: configure, build, install</a>
50 </li>
51 </ul>
54 <hr />
55 <br />
56 <h2><a name="4">Source-Level Documentation</a></h2>
57 <p>The library sources have been specially formatted so that with the
58 proper invocation of another tool (Doxygen), a set of HTML pages
59 are generated from the sources files themselves. The resultant
60 documentation is referred to as Source-Level Documentation, and is
61 useful for examining the signatures of public member functions for
62 the library classes, finding out what is in a particular include
63 file, looking at inheritance diagrams, etc.
64 </p>
65 <p>The Source-Level documentation can be viewed online:</p>
66 <ul>
67 <li><a href="libstdc++-html-USERS-3.1/index.html">for the 3.1 release</a>
68 </li>
69 <li><a href="libstdc++-html-USERS-3.2/index.html">for the 3.2.x release</a>
70 </li>
71 <li><a href="latest-doxygen/index.html">&quot;the latest collection&quot;</a>
72 (for the snapshot or later; see the date on the first page)
73 </li>
74 </ul>
75 <p>This generated HTML collection, as above, is also available for download in
76 the libstdc++ snapshots directory at
77 <code>&lt;URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/&gt;</code>.
78 You will almost certainly need to use one of the <a
79 href="http://gcc.gnu.org/mirrors.html">mirror sites</a> to download
80 the tarball. After unpacking, simply load
81 libstdc++-html-*/index.html into a browser. Feedback (and
82 additional documentation!) is welcome.
83 </p>
84 <p>
85 In addition, an initial set of man pages are also available in the
86 same place as the HTML collections. Start with Intro(3).
87 </p>
90 <hr />
91 <br />
92 <h2><a name="3">Chapter-Specific Documentation</a></h2>
93 <p>Information, extensions, notes and advice on specific implementation
94 capabilites and/or liabilities broken down into chapter names based on the
95 C++ standard.
96 </p>
97 <!--
98 The list below is automatically generated. To make changes in the text,
99 edit the appropriate HOWTO file and run "make" in this directory. In
100 those files, you may reorder entries as you like, but DO NOT change the
101 "#number"s in anchors, for they are used elsewhere and in bookmarks.
103 <!-- beginlist -->
104 <ul>
105 <li>Library Introduction (Chapter 17)
106 <ul>
107 <li><a href="17_intro/howto.html#2">The Standard C++ header files</a></li>
108 <li><a href="17_intro/howto.html#3">The Standard C++ library and multithreading</a></li>
109 <li><a href="17_intro/howto.html#4"><code>&lt;foo&gt;</code> vs <code>&lt;foo.h&gt;</code></a></li>
110 <li><a href="17_intro/porting-howto.html">Porting HOWTO</a></li>
111 <li><a href="17_intro/howto.html#5">Behavior specific to libstdc++-v3</a></li>
112 <li><a href="17_intro/howto.html#6">Preprocessor macros controlling the library</a></li>
113 </ul>
114 </li>
116 <li>Library Support (Chapter 18)
117 <ul>
118 <li><a href="18_support/howto.html#1">Types</a></li>
119 <li><a href="18_support/howto.html#2">Implementation properties</a></li>
120 <li><a href="18_support/howto.html#3">Start and Termination</a></li>
121 <li><a href="18_support/howto.html#4">Dynamic memory management</a></li>
122 <li><a href="18_support/howto.html#5">RTTI, the ABI, and demangling</a></li>
123 </ul>
124 </li>
126 <li>Diagnostics (Chapter 19)
127 <ul>
128 <li><a href="19_diagnostics/howto.html#1">Adding data to exceptions</a></li>
129 <li><a href="19_diagnostics/howto.html#2">Exception class hierarchy diagram</a></li>
130 <li><a href="19_diagnostics/howto.html#3">Concept checkers -- <strong>new and improved!</strong></a></li>
131 <li><a href="19_diagnostics/howto.html#4">Verbose <code>terminate</code></a></li>
132 </ul>
133 </li>
135 <li>General Utilities (Chapter 20)
136 <ul>
137 <li><a href="20_util/howto.html#1"><code>auto_ptr</code> is not omnipotent</a></li>
138 <li><a href="20_util/howto.html#2"><code>auto_ptr</code> inside container classes</a></li>
139 <li><a href="20_util/howto.html#3">Functors</a></li>
140 <li><a href="20_util/howto.html#4">Pairs</a></li>
141 </ul>
142 </li>
144 <li>Strings (Chapter 21)
145 <ul>
146 <li><a href="21_strings/howto.html#1">MFC's CString</a></li>
147 <li><a href="21_strings/howto.html#2">A case-insensitive string class</a></li>
148 <li><a href="21_strings/howto.html#3">Breaking a C++ string into tokens</a></li>
149 <li><a href="21_strings/howto.html#4">Simple transformations</a></li>
150 <li><a href="21_strings/howto.html#5">Making strings of arbitrary character types</a></li>
151 </ul>
152 </li>
154 <li>Localization (Chapter 22)
155 <ul>
156 <li><a href="22_locale/howto.html#1">class locale</a></li>
157 <li><a href="22_locale/howto.html#2">class codecvt</a></li>
158 <li><a href="22_locale/howto.html#3">class ctype</a></li>
159 <li><a href="22_locale/howto.html#4">class messages</a></li>
160 <li><a href="22_locale/howto.html#5">Bjarne Stroustrup on Locales</a></li>
161 <li><a href="22_locale/howto.html#6">Nathan Myers on Locales</a></li>
162 <li><a href="22_locale/howto.html#7">Correct Transformations</a></li>
163 </ul>
164 </li>
166 <li>Containers (Chapter 23)
167 <ul>
168 <li><a href="23_containers/howto.html#1">Making code unaware of the container/array difference</a></li>
169 <li><a href="23_containers/howto.html#2">Variable-sized bitmasks</a></li>
170 <li><a href="23_containers/howto.html#3">Containers and multithreading</a></li>
171 <li><a href="23_containers/howto.html#4">&quot;Hinting&quot; during insertion</a></li>
172 <li><a href="23_containers/howto.html#5">Bitmasks and string arguments</a></li>
173 <li><a href="23_containers/howto.html#6"><code>std::list::size()</code> is O(n)!</a></li>
174 <li><a href="23_containers/howto.html#7">Space overhead management for vectors</a></li>
175 </ul>
176 </li>
178 <li>Iterators (Chapter 24)
179 <ul>
180 <li><a href="24_iterators/howto.html#1">They ain't pointers!</a></li>
181 <li><a href="24_iterators/howto.html#2">It ends <em>where?</em></a></li>
182 </ul>
183 </li>
185 <li>Algorithms (Chapter 25)
186 <ul>
187 <li><a href="25_algorithms/howto.html#1">Prerequisites</a></li>
188 <li><a href="25_algorithms/howto.html#2">Special <code>swap</code>s</a></li>
189 </ul>
190 </li>
192 <li>Numerics (Chapter 26)
193 <ul>
194 <li><a href="26_numerics/howto.html#1">Complex Number Processing</a></li>
195 <li><a href="26_numerics/howto.html#2">Array Processing</a></li>
196 <li><a href="26_numerics/howto.html#3">Numerical Functions</a></li>
197 <li><a href="26_numerics/howto.html#4">C99</a></li>
198 </ul>
199 </li>
201 <li>Input/Output (Chapter 27)
202 <ul>
203 <li><a href="27_io/howto.html#1">Copying a file</a></li>
204 <li><a href="27_io/howto.html#2">The buffering is screwing up my program!</a></li>
205 <li><a href="27_io/howto.html#3">Binary I/O</a></li>
206 <li><a href="27_io/howto.html#5">What is this &lt;sstream&gt;/stringstreams thing?</a></li>
207 <li><a href="27_io/howto.html#6">Deriving a stream buffer</a></li>
208 <li><a href="27_io/howto.html#7">More on binary I/O</a></li>
209 <li><a href="27_io/howto.html#8">Pathetic performance? Ditch C.</a></li>
210 <li><a href="27_io/howto.html#9">Threads and I/O</a></li>
211 <li><a href="27_io/howto.html#10">Which header?</a></li>
212 </ul>
213 </li>
215 <li>Extensions to the Standard Library
216 <ul>
217 <li><a href="ext/howto.html#1">Ropes and trees and hashes, oh my!</a></li>
218 <li><a href="ext/howto.html#2">Added members and types</a></li>
219 <li><a href="ext/howto.html#3">Allocators (versions 3.0, 3.1, 3.2)</a></li>
220 <li><a href="ext/howto.html#6">Allocators (version 3.3)</a></li>
221 <li><a href="ext/howto.html#4">Compile-time checks</a></li>
222 <li><a href="ext/howto.html#5">LWG Issues</a></li>
223 </ul>
224 </li>
226 </ul>
227 <!-- endlist -->
229 <hr />
230 <br />
231 <h2><a name="5">Contributor-Specific Information</a></h2>
232 <ul>
233 <li><a href="17_intro/contribute.html">Contributor checklist</a></li>
234 <li><a href="17_intro/libstdc++-assign.txt">Copyright assignment form for libstdc++-v3</a></li>
235 <li><a href="17_intro/BADNAMES">BADNAMES</a>
236 - names to avoid because of potential collisions</li>
237 <li><a href="17_intro/C++STYLE">C++STYLE</a>
238 - coding style by example</li>
239 <li><a href="17_intro/CHECKLIST">CHECKLIST</a>
240 - a list of required features and their status.</li>
241 <li><a href="17_intro/DESIGN">DESIGN</a>
242 - overview of the implementation plan</li>
243 <li><a href="17_intro/HEADER_POLICY">HEADER_POLICY</a>
244 - header naming and sub-include structure</li>
245 </ul>
247 <!-- ####################################################### -->
249 <p>Return <a href="http://gcc.gnu.org/libstdc++/">to the libstdc++ homepage</a>.</p>
251 <hr />
252 <p class="fineprint"><em>
253 See <a href="17_intro/license.html">license.html</a> for copying conditions.
254 Comments and suggestions are welcome, and may be sent to
255 <a href="mailto:libstdc++@gcc.gnu.org">the libstdc++ mailing list</a>.
256 </em></p>
258 </body>
259 </html>