<!--
    Licensed to the Apache Software  Foundation (ASF) under one or more
    contributor  license agreements.  See  the NOTICE  file distributed
    with  this  work  for  additional information  regarding  copyright
    ownership.   The ASF  licenses this  file to  you under  the Apache
    License, Version  2.0 (the  License); you may  not use  this file
    except in  compliance with the License.   You may obtain  a copy of
    the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the  License is distributed on an  "AS IS" BASIS,
    WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
    implied.   See  the License  for  the  specific language  governing
    permissions and limitations under the License.

    Copyright 1999-2007 Rogue Wave Software, Inc.
-->

<HTML>
<HEAD>
<TITLE>Table, Figure, and Examples List</TITLE>
<LINK REL=StyleSheet HREF="../rw.css" TYPE="text/css" TITLE="Apache stdcxx Stylesheet"></HEAD>
<BODY BGCOLOR=#FFFFFF>
<IMG SRC="images/bnoprev.gif" WIDTH=20 HEIGHT=21 ALT="No previous file" BORDER=O><A HREF="noframes.html"><IMG SRC="images/btop.gif" WIDTH=56 HEIGHT=21 ALT="Top of Document" BORDER=O></A><A HREF="booktoc.html"><IMG SRC="images/btoc.gif" WIDTH=56 HEIGHT=21 ALT="Contents" BORDER=O></A><A HREF="tindex.html"><IMG SRC="images/bindex.gif" WIDTH=56 HEIGHT=21 ALT="Index page" BORDER=O></A><IMG SRC="images/bnonext.gif" WIDTH=25 HEIGHT=21 ALT="No next file" BORDER=O><DIV CLASS="DOCUMENTNAME"><B>Apache C++ Standard Library User's Guide</B></DIV>

<H2>Table, Figure, and Example Listings</H2>
<P>This page lists tables, figures, and captioned example code in this document. If one of those listings does not appear, it is because there are no items of that type in the document.</P>
<P>Available listings:</P>
<UL>
<LI><A HREF="#tables">Tables</A></LI>
<LI><A HREF="#figures">Figures</A></LI>
</UL>
<H3><A NAME="tables">Tables</A></H3>
<UL>
<A HREF="1-4.html#Table&nbsp;1">Table&nbsp;1: Locations of online documentation&nbsp;</A><BR>
<A HREF="1-5.html#Table&nbsp;2">Table&nbsp;2: Typographic conventions</A><BR>
<A HREF="2-2.html#Table&nbsp;3">Table&nbsp;3: Iterator forms in the C++ Standard Library&nbsp;</A><BR>
<A HREF="2-2.html#Table&nbsp;4">Table&nbsp;4: Iterators generated in the C++ Standard Library&nbsp;</A><BR>
<A HREF="3-2.html#Table&nbsp;5">Table&nbsp;5: Function objects provided by the C++ Standard Library&nbsp;</A><BR>
<A HREF="4-1.html#Table&nbsp;6">Table&nbsp;6: Container types provided by the C++ Standard Library&nbsp;</A><BR>
<A HREF="4-1.html#Table&nbsp;7">Table&nbsp;7: Container adaptors of the C++ Standard Library</A><BR>
<A HREF="4-4.html#Table&nbsp;8">Table&nbsp;8: Container types not given in the C++ Standard Library&nbsp;</A><BR>
<A HREF="5-2.html#Table&nbsp;9">Table&nbsp;9: Type definitions for class vector</A><BR>
<A HREF="5-2.html#Table&nbsp;10">Table&nbsp;10: Generic algorithms useful with vectors&nbsp;</A><BR>
<A HREF="6-2.html#Table&nbsp;11">Table&nbsp;11: Type definitions for class list</A><BR>
<A HREF="7-3.html#Table&nbsp;12">Table&nbsp;12: Sequence of values in each bucket during radix sort</A><BR>
<A HREF="8-2.html#Table&nbsp;13">Table&nbsp;13: Type definitions for the set and multiset class templates&nbsp;</A><BR>
<A HREF="8-2.html#Table&nbsp;14">Table&nbsp;14: Generic algorithms useful for the set datatype</A><BR>
<A HREF="9-2.html#Table&nbsp;15">Table&nbsp;15: Type definitions for the classes map and multimap&nbsp;</A><BR>
<A HREF="10-2.html#Table&nbsp;16">Table&nbsp;16: Stack operations</A><BR>
<A HREF="10-3.html#Table&nbsp;17">Table&nbsp;17: Queue operations</A><BR>
<A HREF="11-2.html#Table&nbsp;18">Table&nbsp;18: priority_queue operations</A><BR>
<A HREF="13-1.html#Table&nbsp;19">Table&nbsp;19: Generic algorithms of the C++ Standard Library&nbsp;</A><BR>
<A HREF="14-1.html#Table&nbsp;20">Table&nbsp;20: Generic algorithms specific to ordered collections&nbsp;</A><BR>
<A HREF="21-2.html#Table&nbsp;21">Table&nbsp;21: Fundamental datatypes of the C++ Standard Library&nbsp;</A><BR>
<A HREF="21-3.html#Table&nbsp;22">Table&nbsp;22: Information available through numeric_limits&lt;T&gt; </A><BR>
<A HREF="21-3.html#Table&nbsp;23">Table&nbsp;23: Members specific to floating point values&nbsp;</A><BR>
<A HREF="24-1.html#Table&nbsp;24">Table&nbsp;24: Categories of the C locale&nbsp;</A><BR>
<A HREF="24-1.html#Table&nbsp;25">Table&nbsp;25: C locale functions and the information they cover&nbsp;</A><BR>
<A HREF="28-1.html#Table&nbsp;26">Table&nbsp;26: Predefined standard streams with their associated C standard files</A><BR>
<A HREF="28-3.html#Table&nbsp;27">Table&nbsp;27: Format parameters with arbitrary values</A><BR>
<A HREF="28-3.html#Table&nbsp;28">Table&nbsp;28: Flags and their effects on operators&nbsp;</A><BR>
<A HREF="28-3.html#Table&nbsp;29">Table&nbsp;29: Manipulators&nbsp;</A><BR>
<A HREF="29-1.html#Table&nbsp;30">Table&nbsp;30: Flags and corresponding error categories&nbsp;</A><BR>
<A HREF="29-2.html#Table&nbsp;31">Table&nbsp;31: Stream member functions for error checking&nbsp;</A><BR>
<A HREF="30-3.html#Table&nbsp;32">Table&nbsp;32: Flag names and effects&nbsp;</A><BR>
<A HREF="30-3.html#Table&nbsp;33">Table&nbsp;33: Open modes and their C stdio counterparts&nbsp;</A><BR>
<A HREF="30-3.html#Table&nbsp;34">Table&nbsp;34: Default open modes&nbsp;</A><BR>
<A HREF="30-5.html#Table&nbsp;35">Table&nbsp;35: Possible seeks for seekp&nbsp;</A><BR>
</UL>

<H3><A NAME="figures">Figures</A></H3>
<UL>
<A HREF="23-3.html#Figure&nbsp;1">Figure&nbsp;1: A Japanese sentence mixing four writing systems</A><BR>
<A HREF="23-3.html#Figure&nbsp;2">Figure&nbsp;2: An example of a Japanese text encoded in JIS</A><BR>
<A HREF="23-3.html#Figure&nbsp;3">Figure&nbsp;3: Conversion from a multibyte to a wide character encoding</A><BR>
<A HREF="24-1.html#Figure&nbsp;4">Figure&nbsp;4: Transformation of a C locale from external to internal representation</A><BR>
<A HREF="24-2.html#Figure&nbsp;5">Figure&nbsp;5: A C++ locale is a container of facets</A><BR>
<A HREF="24-3.html#Figure&nbsp;6">Figure&nbsp;6: Multiple locales in C</A><BR>
<A HREF="24-3.html#Figure&nbsp;7">Figure&nbsp;7: Multiple locales in C++</A><BR>
<A HREF="24-3.html#Figure&nbsp;8">Figure&nbsp;8: The Japanese text from <XREF>Figure&nbsp;2</XREF> encoded in JIS</A><BR>
<A HREF="24-3.html#Figure&nbsp;9">Figure&nbsp;9: Parsing input from a multibyte file using the global C locale</A><BR>
<A HREF="24-4.html#Figure&nbsp;10">Figure&nbsp;10: The locale architecture</A><BR>
<A HREF="25-5.html#Figure&nbsp;11">Figure&nbsp;11: Replacing the std::numpunct&lt;char&gt; facet object</A><BR>
<A HREF="25-6.html#Figure&nbsp;12">Figure&nbsp;12: Adding a new facet to a locale</A><BR>
<A HREF="26-3.html#Figure&nbsp;13">Figure&nbsp;13: The relationship of the phone_put facet to the implementing facets</A><BR>
<A HREF="26-5.html#Figure&nbsp;14">Figure&nbsp;14: Map associating country codes with mnemonics for countries' names</A><BR>
<A HREF="26-5.html#Figure&nbsp;15">Figure&nbsp;15: Map associating country codes with country names</A><BR>
<A HREF="26-9.html#Figure&nbsp;16">Figure&nbsp;16: The array parray</A><BR>
<A HREF="27-2.html#Figure&nbsp;17">Figure&nbsp;17: Data transfer supported by iostreams</A><BR>
<A HREF="27-2.html#Figure&nbsp;18">Figure&nbsp;18: Formatting program data</A><BR>
<A HREF="27-2.html#Figure&nbsp;19">Figure&nbsp;19: Code conversion between multibyte and wide characters</A><BR>
<A HREF="27-2.html#Figure&nbsp;20">Figure&nbsp;20: The iostreams layers</A><BR>
<A HREF="27-2.html#Figure&nbsp;21">Figure&nbsp;21: Use of locales in iostreams</A><BR>
<A HREF="27-4.html#Figure&nbsp;22">Figure&nbsp;22: The iostreams layers</A><BR>
<A HREF="27-4.html#Figure&nbsp;23">Figure&nbsp;23: Internal class hierarchy of the formatting layer</A><BR>
<A HREF="27-4.html#Figure&nbsp;24">Figure&nbsp;24: File I/O</A><BR>
<A HREF="27-4.html#Figure&nbsp;25">Figure&nbsp;25: In-memory I/O</A><BR>
<A HREF="27-4.html#Figure&nbsp;26">Figure&nbsp;26: Hierarchy of the transport layer</A><BR>
<A HREF="27-4.html#Figure&nbsp;27">Figure&nbsp;27: Character code conversion performed by the file buffer</A><BR>
<A HREF="27-4.html#Figure&nbsp;28">Figure&nbsp;28: How an input file stream uses a file buffer</A><BR>
<A HREF="27-4.html#Figure&nbsp;29">Figure&nbsp;29: How an input file stream uses locales</A><BR>
<A HREF="34-2.html#Figure&nbsp;30">Figure&nbsp;30: Copying a stream's internal data results in a shared buffer</A><BR>
<A HREF="34-3.html#Figure&nbsp;31">Figure&nbsp;31: Locale objects and shared stream buffers</A><BR>
<A HREF="34-3.html#Figure&nbsp;32">Figure&nbsp;32: An input and an output stream sharing a stream buffer</A><BR>
<A HREF="34-3.html#Figure&nbsp;33">Figure&nbsp;33: A bidirectional stream</A><BR>
<A HREF="34-4.html#Figure&nbsp;34">Figure&nbsp;34: Copies of the file content</A><BR>
<A HREF="35-1.html#Figure&nbsp;35">Figure&nbsp;35: Streams sharing a file</A><BR>
<A HREF="39-1.html#Figure&nbsp;36">Figure&nbsp;36: The streambuf class hierarchy</A><BR>
</UL>


<BR>
<HR>
<IMG SRC="images/bnoprev.gif" WIDTH=20 HEIGHT=21 ALT="No previous file" BORDER=O><A HREF="noframes.html"><IMG SRC="images/btop.gif" WIDTH=56 HEIGHT=21 ALT="Top of Document" BORDER=O></A><A HREF="booktoc.html"><IMG SRC="images/btoc.gif" WIDTH=56 HEIGHT=21 ALT="Contents" BORDER=O></A><A HREF="tindex.html"><IMG SRC="images/bindex.gif" WIDTH=56 HEIGHT=21 ALT="Index page" BORDER=O></A><IMG SRC="images/bnonext.gif" WIDTH=20 HEIGHT=21 ALT="No next file" BORDER=O>

<!-- Google Analytics tracking code -->
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
    _uacct = "UA-1775151-1";
    urchinTracker();
</script>
<!-- end of Google Analytics tracking code -->

</BODY>
</HTML>
