No previous fileTop of DocumentContentsNo linkNo next file
Apache C++ Standard Library User's Guide

Topic Index

Click on one of the letters below to jump immediately to that section of the index.

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X

A

abs() [in 20.2.6 Norm and Absolute Value]
accumulate() [in 13.6.2 Reduce Sequence to a Single Value]
adaptors [in 16.2.2 Generic Inheritance]
   function [in 3.5 Negators and Binders]
   priority queue [in 11.2.1 Declaration and Initialization of priority queue]
   queue [in 10.3.1 Include Files]
   stack [in 10.1 Overview]
adjacent difference
   defined [in 13.7.3 Adjacent Differences]
adjacent_difference() [in 13.7.3 Adjacent Differences]
adjacent_find() [in 13.3.2 Find Consecutive Duplicate Elements]
advance() [in 2.5 Iterator Operations]
advance
   primitive [in 16.4.2 The distance and advance Primitives]
algorithms
   binary search [in 14.4 Binary Search]
   building techniques [in 16.4 Tips and Techniques for Building Algorithms]
   categories [in 16.1 Extending the C++ Standard Library]
   defined [in 1.5.2 Conventions]
   for_each [in 13.8 The for_each() Algorithm]
   generic [in 13.1 Overview]
   heap [in 14.7 heap Operations]
   in-place transformations [in 13.1 Overview]
   initialization [in 13.2 Initialization Algorithms]
   initializing a sequence [in 13.1 Overview]
   merge ordered sequences [in 14.5 Merge Ordered Sequences]
   miscellaneous [in 13.1 Overview]
   nth element [in 14.3 nth Element]
   ordered collection [in 14.1 Overview]
   removal [in 13.1 Overview]
      [in 13.5 Removal Algorithms]
   scalar-producing [in 13.1 Overview]
      [in 13.6 Scalar-Producing Algorithms]
   searching [in 13.1 Overview]
   sequence-generating [in 13.1 Overview]
      [in 13.7 Sequence-Generating Algorithms]
   set operations [in 14.6 set Operations]
   sorting [in 14.2 Sorting Algorithms]
   tips and techniques [in 16.4 Tips and Techniques for Building Algorithms]
   user-defined [in 16.1 Extending the C++ Standard Library]
allocator interface requirements [in 16.3.2 Meeting the Allocator Interface Requirements]
allocator interface
   defined [in 15.1 Overview]
allocator<T> [in 15.2 Using Allocators with Existing C++ Standard Library Containers]
allocators
   conforming [in 15.3.1 Using the Standard Allocator Interface]
   defined [in 15.1 Overview]
   defining your own [in 15.3 Building Your Own Allocators]
   required member functions [in 15.3.1 Using the Standard Allocator Interface]
   with existing containers [in 15.2 Using Allocators with Existing C++ Standard Library Containers]
any() [in 8.4.3 Accessing and Testing Elements]
app [in 30.3.1.2 The Open modes ate, app, and trunc]
append() [in 12.2.3 Assignment, Append, and Swap]
arg() [in 20.2.6 Norm and Absolute Value]
assign() [in 12.2.3 Assignment, Append, and Swap]
   [in 5.2.1 Declaration and Initialization of vectors]
   [in 6.2.1 Declaration and Initialization of lists]
associative container [in 16.1 Extending the C++ Standard Library]
at() [in 12.2.4 Character Access]
   [in 5.2.3 Subscripting a vector]
at-end [in 30.3.1.2 The Open modes ate, app, and trunc]
ate [in 30.3.1.2 The Open modes ate, app, and trunc]
attach(), eliminated [in 45.3.1 Connecting Files and Streams]
automatic file conversion [in 30.4 Binary and Text Mode]
auto_ptr class [in 19.1 Overview]
   declaring and initializing [in 19.2 Declaration and Initialization of Autopointers]
   include file [in 19.1.1 Include File]

B

back() [in 5.2.3 Subscripting a vector]
   [in 6.2.6 Access and Iteration]
back_inserter() [in 2.4 Insert Iterators]
badbit exception, recommended [in 29.3 Catching Exceptions]
base and derived facets example [in 25.1 Understanding Facet Types]
base facet class, how to define [in 25.6 Creating a New Base Facet Class]
base facet types example [in 25.1 Understanding Facet Types]
base facet, defined [in 25.1 Understanding Facet Types]
basic_filebuf [in 27.4.2.2 The File Buffer]
   [in 39.1.1 The streambuf Hierarchy]
   deriving from [in 39.2 Deriving New Stream Buffer Classes]
basic_fstream <charT,traits> [in 30.1 About File Streams]
basic_ifstream <charT,traits> [in 30.1 About File Streams]
basic_iostream [in 27.4.1.4 The Input and Output Streams]
   [in 27.4.1.5 The File Streams]
basic_istream [in 27.4.1.4 The Input and Output Streams]
   [in 27.4.1.5 The File Streams]
basic_istringstream [in 27.4.1.6 The String Streams]
   [in 27.4.1.6 The String Streams]
   [in 27.4.1.6 The String Streams]
   [in 31.1 About String Streams]
basic_ofstream <charT,traits> [in 30.1 About File Streams]
basic_ostream [in 27.4.1.4 The Input and Output Streams]
   [in 27.4.1.5 The File Streams]
basic_ostringstream [in 31.1 About String Streams]
basic_streambuf [in 27.4.2.1 The Stream Buffer]
   interface [in 39.1.2 The streambuf Interface]
   overview [in 39.1.1 The streambuf Hierarchy]
basic_string [in 12.1 The string Abstraction]
basic_stringbuf [in 27.4.2.3 The String Stream Buffer]
   [in 39.1.1 The streambuf Hierarchy]
basic_stringstream [in 31.1 About String Streams]
begin() [in 2.2.1.1 Kinds of Input Iterators]
   [in 5.2.6 Iteration]
   [in 8.2.6 Iterators]
   [in 9.2.5 Iterators]
bidirectional file streams
   no implicit flags [in 30.3.1.1 The in and out Open Modes]
bidirectional iterators [in 2.2 Varieties of Iterators]
   [in 2.2 Varieties of Iterators]
   [in 2.2.4 Bidirectional Iterators]
bidirectional streams
   better than sharing stream buffer [in 34.3.3 Input and Output to the Same Stream]
   defined [in 27.4.1.4 The Input and Output Streams]
   easier for reading and writing [in 34.3.3 Input and Output to the Same Stream]
      [in 34.3.3 Input and Output to the Same Stream]
   figure [in 34.3.3 Input and Output to the Same Stream]
   only one format setting [in 34.3.3 Input and Output to the Same Stream]
   with output manipulator [in 28.3.2 Manipulators]
binary I/O, defined [in 27.2 How the Standard Iostreams Work]
binary mode [in 30.4 Binary and Text Mode]
binary search algorithms [in 14.4 Binary Search]
binary search tree [in 4.4 Container Types Not Found in the C++ Standard Library]
binary_function [in 3.2.2.1 To Employ Existing C++ Standard Library Function Objects]
   [in 6.3 Example Program - An Inventory System]
binary_search() [in 14.4 Binary Search]
binders
   defined [in 3.5 Negators and Binders]
bit groups [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
bit-wise operators [in 8.4 The bitset Abstraction]
bitset
   accessing and testing elements [in 8.4.3 Accessing and Testing Elements]
   declaring and initializing [in 8.4.2 Declaration and Initialization of bitset]
   defined [in 8.4 The bitset Abstraction]
   exclusive or operator [in 8.4.4 set Operations]
   include file [in 8.4.1 Include Files]
   or operator [in 8.4.4 set Operations]
bitsets
   and operator [in 8.4.4 set Operations]
   conversions on [in 8.4.5 Conversions]
   intersection operator [in 8.4.4 set Operations]
   negation operator [in 8.4.4 set Operations]
   set operations on [in 8.4.4 set Operations]
   shift operators [in 8.4.4 set Operations]
boolalpha [in 33.2.1 Examples of Manipulators without Parameters]
boolean vectors [in 5.3 Boolean Vectors]

C

C and C++ locales
   relationship [in 24.3.3 The Relationship between the C Locale and the C++ Locale]
C locale
   categories of [in 24.1 The C Locale]
   complications in switching [in 24.3.1 Common Uses of the C locale]
   default [in 24.3.1 Common Uses of the C locale]
   example [in 24.3.1 Common Uses of the C locale]
   multiple [in 24.3.1 Common Uses of the C locale]
   native [in 24.3.1 Common Uses of the C locale]
   representations of [in 24.1 The C Locale]
   uses of [in 24.3.1 Common Uses of the C locale]
C stdio, defined [in 27.1 The Standard Iostreams]
C++ locale
   multiple [in 24.3.2 Common Uses of C++ Locales]
   native [in 24.3.2 Common Uses of C++ Locales]
   a container of facets [in 24.2 The C++ Locales]
   classic locale [in 24.3.2 Common Uses of C++ Locales]
   global [in 24.3.2 Common Uses of C++ Locales]
   named [in 24.3.2 Common Uses of C++ Locales]
   uses [in 24.3.2 Common Uses of C++ Locales]
callback functions
   example [in 26.9.2 Registration of a Callback Function]
      [in 37.2 An Example]
   how used [in 37.1 Defining Callback Functions]
CallbackRegistrar [in 26.9.3 Improving the Inserter]
capacity() [in 12.2.2 Resetting Size and Capacity]
   [in 5.2.4 Extent and Size-Changing Operations]
catenation [in 13.2.2 Copy One Sequence Into Another Sequence]
character encodings [in 23.3 Character Encodings for Localizing Alphabets]
character traits, stream classes [in 27.4.1.2 The Iostreams Character Type-Dependent Base Class]
   end-of-file value [in 27.4.1.3 Character Traits]
   equality of two characters [in 27.4.1.3 Character Traits]
   type of EOF value [in 27.4.1.3 Character Traits]
      [in 27.4.1.3 Character Traits]
class templates, file streams [in 30.1 About File Streams]
close() [in 27.4.2.2 The File Buffer]
code conversion facet, multibyte
   defining character traits type [in 40.5.2 Define a New Character Traits Type]
   defining conversion state type [in 40.5.1 Define a New Conversion State Type]
   defining the facet [in 40.5.3 Define the Code Conversion Facet]
   implementation steps [in 40.5 Example 2 - Defining a Multibyte Character Code Conversion (JIS <-> Unicode)]
   using the new facet [in 40.5.4 Use the New Code Conversion Facet]
code conversion facet, tiny character
   deriving new facet type [in 40.3 Example 1 - Defining a Narrow Character Code Conversion (ASCII <-> EBCDIC)]
   implementation steps [in 40.3 Example 1 - Defining a Narrow Character Code Conversion (ASCII <-> EBCDIC)]
   specializing type, implementing functions [in 40.3.1 Derive a New Facet Type]
   using new facet [in 40.3.3 Use the New Code Conversion Facet]
code conversion facets
   error indication [in 40.4 Error Indication in Code Conversion Facets]
   overview [in 40.1 Overview]
   user-defined type [in 41.2 Defining Traits and Facets for User-Defined Types]
code conversions
   categories of [in 40.2 Categories of Code Conversions]
   constant-size [in 40.2 Categories of Code Conversions]
   defined [in 27.2 How the Standard Iostreams Work]
   in wide character streams [in 30.1 About File Streams]
   multibyte [in 40.2 Categories of Code Conversions]
   performed by code conversion facets [in 40.1 Overview]
   state-dependent multibyte [in 40.2 Categories of Code Conversions]
   state-independent multibyte [in 40.2 Categories of Code Conversions]
code reuse
   composition [in 16.2.3 Generic Composition]
   generic inheritance [in 16.2.2 Generic Inheritance]
      [in 16.2.2 Generic Inheritance]
   inheritance [in 16.2 Building on the Standard Containers]
   ways to achieve [in 16.2 Building on the Standard Containers]
codecvt<> [in 24.2.1.1 The Standard Facets]
codesets
   7-bit ASCII [in 23.3 Character Encodings for Localizing Alphabets]
   8-bit [in 23.3 Character Encodings for Localizing Alphabets]
   multibyte character codes [in 23.3 Character Encodings for Localizing Alphabets]
collate class [in 24.2.1.1 The Standard Facets]
collate<> [in 24.2.1.1 The Standard Facets]
compare() [in 12.2.8 string Comparisons]
complex class [in 20.1 Overview]
   header file [in 20.1.1 Include Files]
complex conjugate [in 20.2.1 Declaring Complex Numbers]
complex numbers [in 20.1 Overview]
   accessing [in 20.2.2 Accessing Complex Number Values]
   comparing [in 20.2.4 Comparing Complex Values]
   declaring [in 20.2.1 Declaring Complex Numbers]
   norm and absolute value [in 20.2.6 Norm and Absolute Value]
   transcendental functions [in 20.2.8 Transcendental Functions]
   trigonometric functions [in 20.2.7 Trigonometric Functions]
   with streams [in 20.2.5 Stream Input and Output]
concordance [in 9.3.3 Example - A Concordance]
conj() [in 20.2.1 Declaring Complex Numbers]
conjugate
   complex [in 20.2.1 Declaring Complex Numbers]
constant iterators [in 2.2 Varieties of Iterators]
consulting services [in 1.6 Consulting Services and Training]
container adaptors [in 4.1 Overview]
container iterators [in 2.2.1.1 Kinds of Input Iterators]
containers
   bitset [in 8.4 The bitset Abstraction]
   building from scratch [in 16.3 Creating Your Own Containers]
   characteristics of [in 4.1 Overview]
   creating your own [in 16.2 Building on the Standard Containers]
      [in 16.3 Creating Your Own Containers]
   deque [in 7.1 The deque Data Abstraction]
   design requirements [in 16.3 Creating Your Own Containers]
   designing your own [in 16.3.3 Iterator Requirements]
   designing [in 15.1 Overview]
   how to select [in 4.2 Selecting a Container]
   in the C++ Standard Library [in 4.1 Overview]
   iterator requirements [in 16.3.3 Iterator Requirements]
   list [in 6.1 The list Data Abstraction]
   map [in 9.1 The map Data Abstraction]
   multimap [in 9.1 The map Data Abstraction]
   multiset [in 8.1 The set Data Abstraction]
   not in the C++ Standard Library [in 4.4 Container Types Not Found in the C++ Standard Library]
   priority queue [in 11.1 The priority queue Data Abstraction]
   queue [in 10.3 The queue Data Abstraction]
   set [in 8.1 The set Data Abstraction]
   stack [in 10.2 The stack Data Abstraction]
   user-defined [in 16.1 Extending the C++ Standard Library]
      [in 16.1 Extending the C++ Standard Library]
      [in 16.3.2 Meeting the Allocator Interface Requirements]
   vector [in 5.1 The vector Data Abstraction]
   vector<bool> [in 5.3 Boolean Vectors]
conventions [in 1.5.2 Conventions]
conversions, wide character [in 24.2.1.1 The Standard Facets]
copy constructor [in 5.2.1 Declaration and Initialization of vectors]
copy() [in 12.2.7 Copy and Substring]
   [in 13.2.2 Copy One Sequence Into Another Sequence]
copyfmt() [in 34.2.1 Copying a Stream's Data Members]
copy_backward() [in 13.2.2 Copy One Sequence Into Another Sequence]
count() [in 13.6.1 Count the Number of Elements That Satisfy a Condition]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]
count_if() [in 13.6.1 Count the Number of Elements That Satisfy a Condition]
cout.getloc() [in 25.2 Facet Lifetimes]
ctype class [in 24.2.1.1 The Standard Facets]
ctype<> [in 24.2.1.1 The Standard Facets]
Curry, Haskell P. [in 3.5 Negators and Binders]
c_str() [in 12.2.4 Character Access]

D

data() [in 12.2.4 Character Access]
datatypes
   fundamental [in 21.2 Fundamental Datatypes]
deep copy [in 4.3 Memory Management Issues]
deprecated features [in 27.4.1 The Internal Structure of the Formatting Layer]
   [in 45.4 String Streams]
deque
   declaring [in 7.2 deque Operations]
   defined [in 7.1 The deque Data Abstraction]
   example [in 7.3 Example Program - Radix Sort]
   include file [in 7.1.1 Include Files]
   operations for [in 7.2 deque Operations]
derived facet types example [in 25.1 Understanding Facet Types]
derived facet, defined [in 25.1 Understanding Facet Types]
deriving a new stream type [in 38.1 Deriving a New Stream Type]
designing your own containers [in 16.2 Building on the Standard Containers]
   allocator interface requirements [in 16.3.2 Meeting the Allocator Interface Requirements]
   container requirements [in 16.3.1 Meeting the Container Requirements]
   design requirements [in 16.3 Creating Your Own Containers]
   iterators [in 16.3.3 Iterator Requirements]
detach(), eliminated [in 45.3.1 Connecting Files and Streams]
distance() [in 2.5 Iterator Operations]
distance
   primitive [in 16.4.2 The distance and advance Primitives]
distance_type [in 16.4.2 The distance and advance Primitives]
documentation locations [in 1.4.1 Locations of Online Documentation]
documentation
   location of online [in 1.4.1 Locations of Online Documentation]
dynamic casts
   alternatives to [in 38.4.4 A Remark on Performance]
   performance issues [in 38.4.4 A Remark on Performance]

E

empty() [in 10.2 The stack Data Abstraction]
   [in 11.2 The priority queue Operations]
   [in 12.2.2 Resetting Size and Capacity]
   [in 5.2.4 Extent and Size-Changing Operations]
   [in 6.2.5 Extent and Size-Changing Operations]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]
encoding
   Extended UNIX Code (EUC) [in 23.3.1.3 EUC Encoding]
   JIS [in 23.3.1 Multibyte Encodings]
   Shift-JIS [in 23.3.1.1 JIS Encoding]
end() [in 2.2.1.1 Kinds of Input Iterators]
   [in 5.2.6 Iteration]
   [in 8.2.6 Iterators]
   [in 9.2.5 Iterators]
endl [in 28.3.2 Manipulators]
   flushes output stream [in 33.2.2 A Remark on the Manipulator endl]
   manipulator without parameters [in 33.2.1 Examples of Manipulators without Parameters]
equal() [in 13.3.7 Locate the First Mismatched Elements in Parallel Sequences]
   [in 13.6.4 Test Two Sequences for Pairwise Equality]
equal_range() [in 14.4 Binary Search]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]
erase() [in 12.2.6 Insertion, Removal, and Replacement]
   [in 6.2.4 Removing Elements]
   [in 8.2.4 Removal of Elements from a set]
   [in 9.2.4 Removal of Values]
Eratosthenes [in 5.4 Example Program - The Sieve of Eratosthenes]
error model [in 18.2 The Standard Exception Hierarchy]
error state of streams [in 29.1 About Flags]
errors
   catching exceptions [in 29.3 Catching Exceptions]
   checking the stream state [in 29.2 Checking the Stream State]
escape sequences [in 23.3.1.1 JIS Encoding]
EUC encoding [in 23.3.1.2 Shift-JIS Encoding]
event-driven simulation [in 11.3 Example Program - Event-Driven Simulation]
example program [in 9.3.3 Example - A Concordance]
   bank teller simulation [in 10.3.2 Declaration and Initialization of queue]
   event-driven simulation [in 11.3 Example Program - Event-Driven Simulation]
   graphs [in 9.3.2 An Example - Graphs]
   ice cream store simulation [in 11.3 Example Program - Event-Driven Simulation]
   input iterators [in 2.2.1 Input Iterators]
   inventory system [in 6.3 Example Program - An Inventory System]
      [in 6.3 Example Program - An Inventory System]
   radix sort [in 7.3 Example Program - Radix Sort]
   reversing elements in a sequence [in 13.4.1 Reverse Elements in a Sequence]
   roots of a polynomial [in 20.3 Example Program - Roots of a Polynomial]
   RPN calculator [in 10.2.2 Declaration and Initialization of stack]
      [in 10.2.2 Declaration and Initialization of stack]
   sieve of Eratosthenes [in 5.4 Example Program - The Sieve of Eratosthenes]
      [in 5.4 Example Program - The Sieve of Eratosthenes]
   spelling checker [in 8.3 Example Program - A Spelling Checker]
   telephone database [in 9.3.1 Example - A Telephone Database]
example programs
   location of [in 13.1 Overview]
example
   using new code conversion facet [in 40.3.3 Use the New Code Conversion Facet]
   a simple copy [in 13.2.2 Copy One Sequence Into Another Sequence]
   activating an exception on an input stream [in 29.3 Catching Exceptions]
   adding a constant table to a facet class [in 26.5.2 Adding Country Codes]
   adding an arbitrary table to a facet class [in 26.5.2 Adding Country Codes]
   adding data members to a facet class [in 26.5.1 Adding Data Members]
   adjacent_find instruction [in 13.3.2 Find Consecutive Duplicate Elements]
   algorithm swap_ranges [in 13.2.4 Swap Values from Two Parallel Ranges]
   base and derived facets [in 25.1 Understanding Facet Types]
   changing formats within a shift expression [in 28.3.2 Manipulators]
   character classification facet for user-defined type [in 41.2 Defining Traits and Facets for User-Defined Types]
   circumventing protected destructors [in 25.2 Facet Lifetimes]
   class derived from an output stream [in 38.3.2 Derivation from the Stream Classes std -:basic_{i,o}stream]
   class that registers a callback function [in 26.9.2 Registration of a Callback Function]
   closing a file stream [in 30.2.3 Closing a File Stream]
   code conversion facet for user-defined type [in 41.2 Defining Traits and Facets for User-Defined Types]
   constructing a locale object as a copy [in 24.4 The Locale Object]
   conversion code facet, multibyte encoding [in 40.5.3 Define the Code Conversion Facet]
   copy algorithm [in 13.2.2 Copy One Sequence Into Another Sequence]
   copy to output [in 13.2.2 Copy One Sequence Into Another Sequence]
   copying a stream's data members [in 34.2.1 Copying a Stream's Data Members]
   copying data means copying behavior [in 34.2.2 Sharing Stream Buffers Inadvertently]
   creating a German locale [in 25.5 Modifying a Standard Facet's Behavior]
   creating a locale with a new type facet [in 25.6 Creating a New Base Facet Class]
   creating a new stream class by derivation [in 38.4 The Example]
   creating and using streams instantiated on user-defined types [in 41.3 Creating and Using Streams Instantiated on User-Defined Types]
   creating file streams [in 30.2.1 Creating and Opening File Stream Objects]
   date format string manipulator [in 36.3 Another Look at the Date Format String]
   date inserter for new stream class [in 38.4.2 The Date Inserter]
   decimal point not period [in 28.4 Localization Using the Stream's Locale]
   declaring specialized code conversion facet type [in 40.3.2 Specialize the New Facet Type and Implement the Member Functions]
   defining a base class for output stream manipulators [in 38.4.3 The Manipulator]
   defining a new base facet class [in 25.6 Creating a New Base Facet Class]
   defining operator<< for tm [in 25.4 Using a Stream's Facet]
   derived facet class [in 26.6 An Example of a Derived Facet Class]
   deriving code conversion facet type [in 40.3.1 Derive a New Facet Type]
   deriving new logstream class [in 39.2 Deriving New Stream Buffer Classes]
   deriving new stream buffer class [in 39.2 Deriving New Stream Buffer Classes]
   error indication by stream iterators [in 43.3 Error Indication by Stream Iterators]
   exceptions [in 18.4 Example Program - Exceptions]
   extracting a manipulator [in 33.1 A Recap of Manipulators]
   extractor for user-defined type [in 32.3 A Simple Extractor and Inserter for the Example]
   extractor that formats dates [in 32.4 Improved Extractors and Inserters]
   facet objects don''t need deletion [in 25.2 Facet Lifetimes]
   file descriptors for copying stream data [in 34.2.2 Sharing Stream Buffers Inadvertently]
   fill an array with initial values [in 13.2.1 Fill a Sequence with An Initial Value]
   fill in a portion of a collection [in 13.2.1 Fill a Sequence with An Initial Value]
   fill() [in 13.2.1 Fill a Sequence with An Initial Value]
   find algorithm [in 13.3.1 Find an Element Satisfying a Condition]
   finding max and min elements [in 13.3.6 Locate Maximum or Minimum Element]
   find_end algorithm [in 13.3.5 Find the Last Occurrence of a Sub-Sequence]
   format control using some parameters [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
   formatting phone numbers (long) [in 26.1 An Example of Formatting Phone Numbers]
   generate a list of label values [in 13.2.3 Initialize a Sequence with Generated Values]
   generate algorithm [in 13.2.3 Initialize a Sequence with Generated Values]
   generate an arithmetic progression [in 13.2.3 Initialize a Sequence with Generated Values]
   global C++ locale like C [in 24.3.2 Common Uses of C++ Locales]
   imbuing a new locale on a stream [in 42.3 An Example]
   implementing a date inserter for a derived stream class [in 38.4.2 The Date Inserter]
   implementing a manipulator for output stream manipulators [in 38.4.3 The Manipulator]
   implementing new logstream class [in 39.2 Deriving New Stream Buffer Classes]
   implementing overflow function for stream buffer class [in 39.2 Deriving New Stream Buffer Classes]
   implicit synchronization by tying a stream to an output stream [in 35.4 Implicit Synchronization by Tying Streams]
   in memory I/0 of strings [in 31.1 About String Streams]
   inserter for manipulator with parameter [in 33.3.2 The Principle of Manipulators with Parameters]
   inserter for phone number class [in 26.4 An Inserter for Phone Numbers]
   inserter for user-defined type [in 32.3 A Simple Extractor and Inserter for the Example]
   inserter that formats dates [in 32.4 Improved Extractors and Inserters]
   inserter that registers a callback function [in 26.9.3 Improving the Inserter]
   iostreams (long) [in 26.1 An Example of Formatting Phone Numbers]
   iword() and pword() for RTTI in derived stream class [in 38.5 Using iword/pword for RTTI in Derived Streams]
   manipulator extractor [in 33.1 A Recap of Manipulators]
   manipulator type manipT [in 33.3.2 The Principle of Manipulators with Parameters]
   manipulator without parameters [in 33.2.1 Examples of Manipulators without Parameters]
   manipulators with parameters [in 33.3.3 Examples of Manipulators with Parameters]
   mismatch algorithm [in 13.3.7 Locate the First Mismatched Elements in Parallel Sequences]
   new facet class declaration [in 26.3 A Phone Number Formatting Facet Class]
   next_permutation algorithm [in 13.4.5 Generate Permutations in Sequence]
   open mode [in 30.3 The Open Mode]
   opening file streams [in 30.2.1 Creating and Opening File Stream Objects]
   output manipulator that inserts a certain string [in 33.3.3 Examples of Manipulators with Parameters]
   pointers instead of copies of stream objects [in 34.2.3 Using Pointers or References to Streams]
   primitive caching [in 26.9.1 Primitive Caching]
   printing several units in one expression [in 28.2 Input and Output Operators]
   processing files in memory with string streams [in 34.4 Copies of the Stream Buffer]
   protected destructors [in 25.2 Facet Lifetimes]
   references instead of copies of stream objects [in 34.2.3 Using Pointers or References to Streams]
   registering a callback function [in 26.9.2 Registration of a Callback Function]
      [in 37.2 An Example]
   replacing a facet object [in 25.5 Modifying a Standard Facet's Behavior]
   retrieving facet data without new/delete [in 25.2 Facet Lifetimes]
   seek function version for fixed-width character encoding [in 30.5 File Positioning]
   seek functions for iostreams [in 30.5.1 How Positioning Works with the Iostream Architecture]
   seeking to a position [in 30.5 File Positioning]
   self copies [in 13.2.2 Copy One Sequence Into Another Sequence]
   separate file buffer object for copying stream data [in 34.2.2 Sharing Stream Buffers Inadvertently]
   setting field width [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
   shared stream buffer for I/O to same stream [in 34.3.3 Input and Output to the Same Stream]
   sharing stream buffer for several locales [in 34.3.2 Several Locales for the Same Stream]
   sharing stream buffer when output is formatted differently [in 34.3.1 Several Format Settings for the Same Stream]
   skipping white space [in 28.5.1 Skipping Characters]
   split a line into words [in 12.3 Example Function - Split a Line into Words]
   standard facet template numpunct [in 25.1 Understanding Facet Types]
   switching locales in C [in 24.3.1 Common Uses of the C locale]
   switching locales in C++ [in 24.3.1 Common Uses of the C locale]
   switching off the unitbuf flag [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
   telephone number class declaration [in 26.2 A Phone Number Class]
   tiny character code conversion [in 40.3 Example 1 - Defining a Narrow Character Code Conversion (ASCII <-> EBCDIC)]
   traits class for user-defined type [in 41.2 Defining Traits and Facets for User-Defined Types]
   traits template [in 17.2 Using the Traits Technique]
   updating a cache with a callback function [in 26.9.2 Registration of a Callback Function]
   use fill to initialize a list [in 13.2.1 Fill a Sequence with An Initial Value]
   use fill to overwrite values in list [in 13.2.1 Fill a Sequence with An Initial Value]
   user-defined facet class (long) [in 26.1 An Example of Formatting Phone Numbers]
   user-defined type [in 32.2 An Example with a User-Defined Type]
      [in 41.1.1 Requirements for User-Defined Character Types]
   use_facet and has_facet [in 25.3 Accessing a Locale's Facets]
   use_facet type error [in 25.3 Accessing a Locale's Facets]
   using a new facet class [in 26.7 Using Phone Number Facets]
   using a stream's facet [in 25.4 Using a Stream's Facet]
   using callback functions with a user-defined stream inserter [in 26.9.2 Registration of a Callback Function]
   using code conversion facet, multibyte encoding [in 40.5.4 Use the New Code Conversion Facet]
   using copy to convert type [in 13.2.2 Copy One Sequence Into Another Sequence]
   using flush() to flush a stream buffer [in 35.2.1 Output Streams]
   using generic set algorithms [in 14.6 set Operations]
   using ios_base::unitbuf to flush a stream buffer [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
   using is_open() [in 30.2.2 Checking a File Stream's Status]
      [in 30.2.2 Checking a File Stream's Status]
   using new log buffer class [in 39.2 Deriving New Stream Buffer Classes]
   using sync() to refill a stream buffer [in 35.2.2 Input Streams]
   using the accumulate algorithm [in 13.6.2 Reduce Sequence to a Single Value]
   using the adjacent difference algorithm [in 13.7.3 Adjacent Differences]
   using the binary search algorithm [in 14.4 Binary Search]
   using the copy algorithm [in 13.2.2 Copy One Sequence Into Another Sequence]
   using the count algorithm [in 13.6.1 Count the Number of Elements That Satisfy a Condition]
   using the ctype facet [in 25.3 Accessing a Locale's Facets]
   using the equal algorithm [in 13.6.4 Test Two Sequences for Pairwise Equality]
   using the find algorithm [in 13.3.3 Find the First Occurrence of Any Value from a Sequence]
   using the heap algorithms [in 14.7 heap Operations]
   using the inner_product algorithm [in 13.6.3 Generalized Inner Product]
   using the inplace_merge algorithm [in 13.4.6 Merge Two Adjacent Sequences into One]
   using the lexicographical_compare algorithm [in 13.6.5 Lexical Comparison]
   using the merge algorithm [in 14.5 Merge Ordered Sequences]
   using the next_permutation algorithm [in 13.4.5 Generate Permutations in Sequence]
   using the nth_element algorithm [in 14.3 nth Element]
   using the partial sort algorithm [in 14.2.1 Partial Sort]
   using the partial sum algorithm [in 13.7.2 Partial Sums]
   using the partition algorithm [in 13.4.4 Partition a Sequence into Two Groups]
   using the random_shuffle algorithm [in 13.4.7 Randomly Rearrange Elements in a Sequence]
   using the remove algorithm [in 13.5.1 Remove Unwanted Elements]
   using the replace algorithm [in 13.4.2 Replace Certain Elements With Fixed Value]
   using the reverse algorithm [in 13.4.1 Reverse Elements in a Sequence]
   using the rotate algorithm [in 13.4.3 Rotate Elements Around a Midpoint]
   using the search algorithm [in 13.3.4 Find a Sub-Sequence within a Sequence]
   using the sort algorithm [in 14.2 Sorting Algorithms]
   using the transform algorithm [in 13.7.1 Transform One or Two Sequences]
   using the unique algorithm [in 13.5.2 Remove Runs of Similar Values]
   using time_put facet to print a date [in 25.4 Using a Stream's Facet]
   wrong way to write to an output stream [in 34.2 Copying and Assigning Stream Objects]
exception handling classes
   hierarchy [in 18.2 The Standard Exception Hierarchy]
   include files [in 18.1.1 Include Files]
   using [in 18.3 Using Exceptions]
exception handling [in 18.1 Overview]
   performance issues [in 38.4.4 A Remark on Performance]
exception mask [in 29.3 Catching Exceptions]
exceptions() [in 34.2.1 Copying a Stream's Data Members]
explicit synchronization [in 35.2 Explicit Synchronization]
exponential functions [in 20.2.8 Transcendental Functions]
extending the C++ Standard Library [in 16.1 Extending the C++ Standard Library]
extensibility
   manipulators [in 33.1 A Recap of Manipulators]
   to new types [in 27.1.1 Type Safety]
   user-defined types [in 32.1 A Note on User-Defined Types]
extractors and inserters
   improving [in 32.5 More Improved Extractors and Inserters]
extractors [in 27.4.1.4 The Input and Output Streams]
   [in 28.2 Input and Output Operators]
   [in 32.3 A Simple Extractor and Inserter for the Example]
   example with recommended functionality [in 32.5.1 Applying the Recommendations to the Example]
   pattern for user-defined types [in 32.6 Patterns for Extractors and Inserters of User-Defined Types]
   that format dates [in 32.4 Improved Extractors and Inserters]

F

facet objects
   create with new, not on stack [in 25.2 Facet Lifetimes]
   deleting unnecessary [in 25.2 Facet Lifetimes]
facet-class, user-defined
   adding an arbitrary table [in 26.5.2 Adding Country Codes]
   adding data members [in 26.5 The Phone Number Facet Class Revisited]
   adding static data member [in 26.5.2 Adding Country Codes]
   base class [in 26.3 A Phone Number Formatting Facet Class]
   class declaration [in 26.2 A Phone Number Class]
   derived facet class [in 26.6 An Example of a Derived Facet Class]
   example begins [in 26.1 An Example of Formatting Phone Numbers]
   improved inserter [in 26.9.3 Improving the Inserter]
   improving the inserter [in 26.9 Improving the Inserter Function]
   information required for [in 26.5 The Phone Number Facet Class Revisited]
   initial facet class declaration [in 26.3 A Phone Number Formatting Facet Class]
   inserter [in 26.4 An Inserter for Phone Numbers]
   memory management [in 26.5.2 Adding Country Codes]
   primitive caching [in 26.9.1 Primitive Caching]
   registration of callback functions [in 26.9.2 Registration of a Callback Function]
   using facet instances [in 26.7 Using Phone Number Facets]
facets
   defined [in 24.2 The C++ Locales]
      [in 24.2.1 Facets]
      [in 25.1 Understanding Facet Types]
   difference between base and derived [in 25.1 Understanding Facet Types]
   overriding default deletion [in 25.2 Facet Lifetimes]
   standard [in 24.2.1.1 The Standard Facets]
      [in 25.1 Understanding Facet Types]
failbit [in 29.1 About Flags]
field width [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
figure
   adding a new facet to a locale [in 25.6 Creating a New Base Facet Class]
   bidirectional stream [in 34.3.3 Input and Output to the Same Stream]
   C locale functions and information [in 24.1 The C Locale]
   C++ locale as container of facets [in 24.2 The C++ Locales]
   character code conversion performed by the file buffer [in 27.4.2.2 The File Buffer]
   code conversion between multibyte and wide characters [in 27.2 How the Standard Iostreams Work]
   converting from multibyte to wide character encoding [in 23.3.3 Conversion between Multibyte and Wide Characters]
   copies of the file content [in 34.4 Copies of the Stream Buffer]
   copying a stream's internal data results in a shared buffer [in 34.2.1 Copying a Stream's Data Members]
   data transfer supported by iostreams [in 27.2 How the Standard Iostreams Work]
   example of JIS encoding [in 23.3.1.1 JIS Encoding]
      [in 24.3.1 Common Uses of the C locale]
   file I/O [in 27.4.1.5 The File Streams]
   formatting program data [in 27.2 How the Standard Iostreams Work]
   hierarchy of the transport layer [in 27.4.2 The Transport Layer's Internal Structure]
   in-memory I/O [in 27.4.1.6 The String Streams]
   input and output streams sharing buffer [in 34.3.3 Input and Output to the Same Stream]
   input file stream using a file buffer [in 27.4.3 Collaboration of Streams and Stream Buffers]
   input file stream using locales [in 27.4.4 Collaboration of Locales and Iostreams]
   internal class hierarchy of the formatting layer [in 27.4.1 The Internal Structure of the Formatting Layer]
   iostreams layers [in 27.2.1 The Iostream Layers]
      [in 27.4 The Internal Structure of the Iostreams Layers]
   Japanese sentence showing writing systems [in 23.3.1 Multibyte Encodings]
   locale architecture [in 24.4 The Locale Object]
   locale objects and shared stream buffers [in 34.3.2 Several Locales for the Same Stream]
   map associating country codes and name mnemonics [in 26.5.2 Adding Country Codes]
   map associating country codes with country names [in 26.5.2 Adding Country Codes]
   multiple locales in C [in 24.3.1 Common Uses of the C locale]
   multiple locales in C++ [in 24.3.1 Common Uses of the C locale]
   parsing input from a multibyte file using the global C locale [in 24.3.1 Common Uses of the C locale]
   phone_put facet and implementing facets [in 26.3 A Phone Number Formatting Facet Class]
   replacing the numpunct<char> facet object [in 25.5 Modifying a Standard Facet's Behavior]
   static array parray [in 26.9.2 Registration of a Callback Function]
   streambuf class hierarchy [in 39.1.1 The streambuf Hierarchy]
   streams sharing a file [in 35.1 Sharing Files Among Streams]
   use of locales in iostreams [in 27.2.1.3 Locales]
file buffer, defined [in 27.4.1.5 The File Streams]
file conversion
   automatic [in 30.4 Binary and Text Mode]
file descriptors [in 34.2.2 Sharing Stream Buffers Inadvertently]
   [in 45.3.1 Connecting Files and Streams]
file I/O
   defined [in 27.2.2 File and In-Memory I/O]
file position, defined [in 30.3.1.2 The Open modes ate, app, and trunc]
file positioning [in 30.5 File Positioning]
   in iostream architecture [in 30.5 File Positioning]
file streams [in 27.4.1.5 The File Streams]
   binary and text mode [in 30.4 Binary and Text Mode]
   checking status [in 30.2.2 Checking a File Stream's Status]
   closing [in 30.2.2 Checking a File Stream's Status]
   creating and opening [in 30.2.1 Creating and Opening File Stream Objects]
   file positioning operations [in 30.5 File Positioning]
   open mode [in 30.3 The Open Mode]
      [in 30.3 The Open Mode]
   overview [in 30.1 About File Streams]
fill() [in 13.2.1 Fill a Sequence with An Initial Value]
fill_n() [in 13.2.1 Fill a Sequence with An Initial Value]
find() [in 12.2.9 Searching Operations]
   [in 13.3.1 Find an Element Satisfying a Condition]
   [in 13.3.3 Find the First Occurrence of Any Value from a Sequence]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]
find_end() [in 13.3.5 Find the Last Occurrence of a Sub-Sequence]
find_first_not_of() [in 12.2.9 Searching Operations]
find_first_of() [in 12.2.9 Searching Operations]
find_if() [in 13.3.1 Find an Element Satisfying a Condition]
   [in 13.3.3 Find the First Occurrence of Any Value from a Sequence]
find_last_not_of() [in 12.2.9 Searching Operations]
find_last_of() [in 12.2.9 Searching Operations]
flags
   error categories of [in 29.1 About Flags]
   format [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
   open mode [in 30.3.1 The Open Mode Flags]
flip() [in 5.3 Boolean Vectors]
   [in 8.4.3 Accessing and Testing Elements]
flush() [in 35.2.1 Output Streams]
format control [in 28.3 Format Control Using the Stream's Format State]
format flags [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
format parameters [in 28.3 Format Control Using the Stream's Format State]
   arbitrary value [in 28.3.1.1 Parameters That Can Have an Arbitrary Value]
   few values [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
   irrelevant for extraction [in 28.5 Formatted Input]
format state variables [in 28.3.1 Format Parameters]
formats
   alphabets [in 23.2.1 Language]
   currency [in 23.2.3 Currency]
   date and time [in 23.2.4 Time and Date]
   numbers [in 23.2.2 Numbers]
   ordering [in 23.2.5 Ordering]
   phone numbers [in 26.1 An Example of Formatting Phone Numbers]
formatted input [in 28.5 Formatted Input]
formatting layer
   defined [in 27.2.1.1 The Formatting Layer]
   internal structure [in 27.4.1 The Internal Structure of the Formatting Layer]
formatting phone numbers example [in 26.1 An Example of Formatting Phone Numbers]
formatting, defined [in 27.2 How the Standard Iostreams Work]
forward iterators [in 2.2 Varieties of Iterators]
   [in 2.2.3 Forward Iterators]
for_each() [in 13.8 The for_each() Algorithm]
   [in 3.1 Functions]
front() [in 5.2.3 Subscripting a vector]
   [in 6.2.6 Access and Iteration]
front_inserter() [in 2.4 Insert Iterators]
function adaptors
   defined [in 3.4.1 Definition]
function objects [in 3.2.1 Definition]
   and implemented operations [in 3.2.2.1 To Employ Existing C++ Standard Library Function Objects]
   in place of functions [in 3.2.2 Use]
   standard [in 3.2.2.1 To Employ Existing C++ Standard Library Function Objects]
   to access or set state information [in 3.2.2.3 To Access or Set State Information]
   to improve execution [in 3.2.2.2 To Improve Execution]
functions as arguments [in 3.1 Functions]
fundamental datatypes [in 21.2 Fundamental Datatypes]
future events [in 11.1 The priority queue Data Abstraction]

G

generate() [in 13.2.3 Initialize a Sequence with Generated Values]
generate_n() [in 13.2.3 Initialize a Sequence with Generated Values]
generators [in 13.2.3 Initialize a Sequence with Generated Values]
   defined [in 3.2.2.3 To Access or Set State Information]
generic adaptor [in 16.2.2 Generic Inheritance]
generic algorithms
   categories of [in 13.1 Overview]
   include files [in 13.1.1 Include Files]
generic composition [in 16.2.3 Generic Composition]
   [in 16.2.3 Generic Composition]
generic inheritance [in 16.2.1 Inheritance]
generic programming [in 16.1 Extending the C++ Standard Library]
get area, defined [in 39.1.1 The streambuf Hierarchy]
get() [in 27.4.1.4 The Input and Output Streams]
get_date() [in 32.4 Improved Extractors and Inserters]
global locale, snapshots [in 24.3.2 Common Uses of C++ Locales]
graph [in 4.4 Container Types Not Found in the C++ Standard Library]

H

handle-body idiom [in 24.4 The Locale Object]
hash table [in 4.4 Container Types Not Found in the C++ Standard Library]
has_facet [in 25.3 Accessing a Locale's Facets]
   type required for [in 25.3 Accessing a Locale's Facets]
heap [in 11.2.1 Declaration and Initialization of priority queue]
   defined [in 14.7 heap Operations]
   operations [in 14.7 heap Operations]
heterogeneous collection [in 11.3 Example Program - Event-Driven Simulation]

I

ignore() [in 28.5.1 Skipping Characters]
imag() [in 20.2.2 Accessing Complex Number Values]
imbuing locales
   new locale [in 42.2 When to Imbue a New Locale]
   restrictions on [in 42.2 When to Imbue a New Locale]
imbuing streams [in 24.3.1 Common Uses of the C locale]
implicit synchronization
   by tying streams [in 35.4 Implicit Synchronization by Tying Streams]
   using the unitbuf flag [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
in()
   return codes [in 40.4 Error Indication in Code Conversion Facets]
in-memory I/O [in 31.1 About String Streams]
   defined [in 27.2.2 File and In-Memory I/O]
   string streams [in 27.4.1.6 The String Streams]
in-memory parsing and formatting [in 31.1 About String Streams]
in-place transformations [in 13.4 In-Place Transformations]
includes() [in 14.6 set Operations]
   [in 14.6 set Operations]
   [in 8.2.7.1 Subset test]
indexing operator [in 25.3 Accessing a Locale's Facets]
inheritance [in 16.2.1 Inheritance]
initializating a base class [in 38.3 Construction and Initialization]
initialization algorithms [in 13.2 Initialization Algorithms]
   copying [in 13.2.2 Copy One Sequence Into Another Sequence]
   exchanging values [in 13.2.4 Swap Values from Two Parallel Ranges]
   fixed value [in 13.2.1 Fill a Sequence with An Initial Value]
   generated values [in 13.2.3 Initialize a Sequence with Generated Values]
inner_product() [in 13.6.3 Generalized Inner Product]
inplace_merge() [in 13.4.6 Merge Two Adjacent Sequences into One]
   [in 14.5 Merge Ordered Sequences]
input and output streams [in 27.4.1.3 Character Traits]
input iterators [in 2.2 Varieties of Iterators]
   [in 2.2.1 Input Iterators]
   container iterators [in 2.2.1.1 Kinds of Input Iterators]
   example [in 2.2.1 Input Iterators]
   input streams iterators [in 2.2.1.1 Kinds of Input Iterators]
   ordinary pointers [in 2.2.1.1 Kinds of Input Iterators]
input of strings [in 28.5.2 Input of Strings]
input streams iterators [in 2.2.1.1 Kinds of Input Iterators]
   [in 2.2.1.1 Kinds of Input Iterators]
input streams
   synch() function [in 35.2.2 Input Streams]
insert iterators [in 13.2.1 Fill a Sequence with An Initial Value]
   [in 13.2.2 Copy One Sequence Into Another Sequence]
   [in 13.7 Sequence-Generating Algorithms]
   [in 2.4 Insert Iterators]
insert() [in 12.2.6 Insertion, Removal, and Replacement]
   [in 5.2.5 Inserting and Removing Elements]
   [in 6.2.3 Placing Elements into a list]
   [in 8.2.3 Insertion]
   [in 9.2.3 Insertion and Access]
inserter() [in 2.4 Insert Iterators]
inserters and extractors
   complexity of [in 32.5.2 An Afterthought]
   recommended functionality [in 32.5 More Improved Extractors and Inserters]
inserters [in 27.4.1.4 The Input and Output Streams]
   [in 28.2 Input and Output Operators]
   [in 32.3 A Simple Extractor and Inserter for the Example]
   example with recommended functionality [in 32.5.1 Applying the Recommendations to the Example]
   for date objects in stream storage [in 36.3 Another Look at the Date Format String]
   pattern for user-defined types [in 32.6 Patterns for Extractors and Inserters of User-Defined Types]
internationalization [in 45.2 Internationalization]
   defined [in 23.1 Defining the Terms]
   C++ Standard Library features [in 23.4 Summary]
ios, not a class in standard [in 27.4.1.2 The Iostreams Character Type-Dependent Base Class]
iostream class [in 27.4.1.4 The Input and Output Streams]
iostreams
   Standard C Library [in 27.1 The Standard Iostreams]
   standard vs. Apache C++ Standard Library [in 46.1 Extensions]
   standard vs. traditional [in 45.1 The Character Type]
ios_base [in 27.4.1 The Internal Structure of the Formatting Layer]
   :badbit [in 29.1 About Flags]
   :eofbit [in 29.1 About Flags]
   :failbit [in 29.1 About Flags]
      [in 29.1 About Flags]
   :goodbit [in 29.1 About Flags]
   :iword() [in 36.2 An Example - Storing a Date Format String]
      [in 36.3 Another Look at the Date Format String]
   :openmode [in 30.3.1 The Open Mode Flags]
   :pword() [in 36.2 An Example - Storing a Date Format String]
      [in 36.3 Another Look at the Date Format String]
   :xalloc() [in 36.2 An Example - Storing a Date Format String]
   parray [in 26.9.2 Registration of a Callback Function]
iotaGen [in 13.2.3 Initialize a Sequence with Generated Values]
   [in 3.2.2.3 To Access or Set State Information]
istream [in 27.4.1.4 The Input and Output Streams]
istream_iterator [in 2.3.1 Input Stream Iterators]
istrstream
   deprecated [in 27.4.1 The Internal Structure of the Formatting Layer]
      [in 45.4 String Streams]
is_open() [in 30.2.2 Checking a File Stream's Status]
iterators [in 16.3.3 Iterator Requirements]
   bidirectional [in 2.2 Varieties of Iterators]
      [in 2.2 Varieties of Iterators]
      [in 2.2.4 Bidirectional Iterators]
      [in 2.2.4 Bidirectional Iterators]
   constant [in 2.2 Varieties of Iterators]
      [in 2.2 Varieties of Iterators]
   define ranges [in 2.1 Introduction to Iterators]
   defined [in 2.1 Introduction to Iterators]
   forms of [in 2.2 Varieties of Iterators]
   forward [in 2.2 Varieties of Iterators]
      [in 2.2.3 Forward Iterators]
      [in 2.2.3 Forward Iterators]
   functions for manipulating [in 2.5 Iterator Operations]
   input [in 2.2 Varieties of Iterators]
      [in 2.2.1 Input Iterators]
   insert [in 13.2.2 Copy One Sequence Into Another Sequence]
      [in 2.4 Insert Iterators]
      [in 2.4 Insert Iterators]
   iterator requirements [in 16.3.3 Iterator Requirements]
   output stream [in 2.3.2 Output Stream Iterators]
   output [in 2.2 Varieties of Iterators]
      [in 2.2.2 Output Iterators]
   pairs of [in 2.1 Introduction to Iterators]
   random access [in 2.2 Varieties of Iterators]
      [in 2.2 Varieties of Iterators]
      [in 2.2.5 Random Access Iterators]
      [in 2.2.5 Random Access Iterators]
   range [in 2.1 Introduction to Iterators]
   reachable [in 2.1 Introduction to Iterators]
   reverse [in 2.2.6 Reverse Iterators]
   stream [in 2.3 Stream Iterators]
iterator_category
   primitive [in 16.4.1 The iterator_traits Template]
iterator_traits template [in 16.4 Tips and Techniques for Building Algorithms]
iter_swap() [in 13.2.4 Swap Values from Two Parallel Ranges]
iword() [in 36.2 An Example - Storing a Date Format String]
   [in 36.3 Another Look at the Date Format String]

J

Japanese encodings [in 23.3.1 Multibyte Encodings]
Japanese Industrial Standard (JIS) encoding [in 23.3.1.1 JIS Encoding]
Japanese sentence example [in 23.3.1 Multibyte Encodings]
JIS encoding example [in 23.3.1.1 JIS Encoding]

K

key_comp() [in 9.2.7 Element Comparisons]

L

LC_COLLATE [in 24.2.1.1 The Standard Facets]
LC_CTYPE [in 24.2.1.1 The Standard Facets]
LC_MESSAGES [in 24.2.1.1 The Standard Facets]
LC_MONETARY [in 24.2.1.1 The Standard Facets]
LC_NUMERIC [in 24.2.1.1 The Standard Facets]
LC_TIME [in 24.2.1.1 The Standard Facets]
length() [in 12.2.2 Resetting Size and Capacity]
lexical comparison
   defined [in 13.6.5 Lexical Comparison]
lexicographical_compare() [in 13.6.5 Lexical Comparison]
list operations example [in 6.3 Example Program - An Inventory System]
list
   declaring and initializing [in 6.2.1 Declaration and Initialization of lists]
   defined [in 6.1 The list Data Abstraction]
   example [in 6.3 Example Program - An Inventory System]
   include file [in 6.1.1 Include files]
   operations for [in 6.2 list Operations]
   type definitions for [in 6.2.2 Type Definitions]
locale objects [in 24.4 The Locale Object]
   building by composition [in 24.4 The Locale Object]
   constructing as a copy [in 24.4 The Locale Object]
   copying is cheap [in 24.4 The Locale Object]
   immutability of [in 24.4 The Locale Object]
   like container or map [in 25.3 Accessing a Locale's Facets]
locale
   :locale() [in 24.3.2 Common Uses of C++ Locales]
   and iostreams [in 27.4.3 Collaboration of Streams and Stream Buffers]
   and the formatting and transport layers [in 27.2.1.3 Locales]
   constructors of the class [in 24.4 The Locale Object]
   differences between C and C++ [in 24.3 Differences between the C Locale and the C++ Locales]
   functions of the class [in 24.4 The Locale Object]
   global, snapshots [in 24.3.2 Common Uses of C++ Locales]
   in C [in 24.1 The C Locale]
      [in 24.1 The C Locale]
   use with iostreams [in 42.1 Locales and Iostreams]
   when to imbue new locale [in 42.2 When to Imbue a New Locale]
localization
   alphabet [in 23.2.1 Language]
   character encodings [in 23.3 Character Encodings for Localizing Alphabets]
   collating sequence [in 23.2.5 Ordering]
   currency [in 23.2.2 Numbers]
   defined [in 23.1 Defining the Terms]
   language [in 23.2.1 Language]
   numbers [in 23.2.2 Numbers]
   ordering [in 23.2.4 Time and Date]
   time and date [in 23.2.3 Currency]
   using stream's locale [in 28.4 Localization Using the Stream's Locale]
locking mechanism
   for multithreading [in 44.2 The Locking Mechanism]
   protecting the buffer [in 44.2.1 Protecting the Buffer]
logic errors [in 18.1 Overview]
logic_error [in 18.2 The Standard Exception Hierarchy]
lower_bound() [in 14.4 Binary Search]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]

M

make_heap() [in 14.7 heap Operations]
managing data storage [in 15.1 Overview]
Manip(x)
   as call to function object [in 33.3.2 The Principle of Manipulators with Parameters]
   as constructor call [in 33.3.2 The Principle of Manipulators with Parameters]
   as function call [in 33.3.2 The Principle of Manipulators with Parameters]
manipT [in 33.3.2 The Principle of Manipulators with Parameters]
   defined [in 33.1 A Recap of Manipulators]
manipulator extractor [in 33.1 A Recap of Manipulators]
manipulator, date format string [in 36.3 Another Look at the Date Format String]
manipulator, date storage string
   who owns it [in 36.4 Caveat]
manipulators with parameters
   defined [in 33.3.2 The Principle of Manipulators with Parameters]
   example using function object and static member function [in 33.3.3 Examples of Manipulators with Parameters]
   example using function object and virtual member function [in 33.3.3 Examples of Manipulators with Parameters]
   example using function pointer and global function [in 33.3.3 Examples of Manipulators with Parameters]
   example using unnamed object and static member function [in 33.3.3 Examples of Manipulators with Parameters]
   example using unnamed Object and virtual member function [in 33.3.3 Examples of Manipulators with Parameters]
   examples of [in 33.3.2 The Principle of Manipulators with Parameters]
   implementation techniques [in 33.3.2 The Principle of Manipulators with Parameters]
      [in 33.3.3 Examples of Manipulators with Parameters]
manipulators without parameters
   boolalpha [in 33.2.1 Examples of Manipulators without Parameters]
   endl [in 33.2.1 Examples of Manipulators without Parameters]
   general [in 33.2.1 Examples of Manipulators without Parameters]
manipulators [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
manipulators, base type allowing output stream references [in 33.3.3 Examples of Manipulators with Parameters]
   function object for [in 33.3.3 Examples of Manipulators with Parameters]
   inserter for [in 33.3.3 Examples of Manipulators with Parameters]
manipulators, implementation techniques
   choosing associated functions [in 33.3.2 The Principle of Manipulators with Parameters]
      [in 33.3.2 The Principle of Manipulators with Parameters]
   comparison [in 33.3.2 The Principle of Manipulators with Parameters]
   solutions for Manip(X) [in 33.3.2 The Principle of Manipulators with Parameters]
manipulators
   abstract type differs from smanip [in 33.3.3 Examples of Manipulators with Parameters]
   abstract type [in 33.3.3 Examples of Manipulators with Parameters]
   advantages of associating virtual member functions [in 33.3.3 Examples of Manipulators with Parameters]
   defined [in 28.3.2 Manipulators]
   derived from smanip [in 33.3.3 Examples of Manipulators with Parameters]
   extractors for input streams [in 33.2 Manipulators without Parameters]
   extractors for output streams [in 33.2 Manipulators without Parameters]
   for output streams [in 33.3.3 Examples of Manipulators with Parameters]
   function pointer types [in 33.2 Manipulators without Parameters]
   input and output streams [in 33.2.1 Examples of Manipulators without Parameters]
   inserter for abstract type [in 33.3.3 Examples of Manipulators with Parameters]
   operation of [in 28.3.2 Manipulators]
   output manipulator that inserts a certain string [in 33.3.3 Examples of Manipulators with Parameters]
   output streams [in 33.2.1 Examples of Manipulators without Parameters]
   summary [in 33.1 A Recap of Manipulators]
   that store additional data [in 33.3.3 Examples of Manipulators with Parameters]
   type requirements [in 33.1 A Recap of Manipulators]
   without parameters [in 33.2 Manipulators without Parameters]
map
   comparing elements [in 9.2.7 Element Comparisons]
   declaring and initializing [in 9.2.1 Declaration and Initialization of map]
   defined [in 9.1 The map Data Abstraction]
   example [in 9.3.1 Example - A Telephone Database]
      [in 9.3.2 An Example - Graphs]
      [in 9.3.3 Example - A Concordance]
   include file [in 9.1.1 Include files]
   insertion and access [in 9.2.3 Insertion and Access]
   iterators for [in 9.2.5 Iterators]
   removing values from [in 9.2.4 Removal of Values]
   searching and counting [in 9.2.6 Searching and Counting]
   type definitions for [in 9.2.2 Type Definitions]
max() [in 13.3.6 Locate Maximum or Minimum Element]
max_element() [in 13.3.6 Locate Maximum or Minimum Element]
max_size() [in 12.2.2 Resetting Size and Capacity]
   [in 5.2.4 Extent and Size-Changing Operations]
memory management [in 4.3 Memory Management Issues]
mem_fun [in 3.4.3 Adapting Member Functions]
merge ordered sequences algorithm [in 14.5 Merge Ordered Sequences]
merge() [in 13.4.6 Merge Two Adjacent Sequences into One]
   [in 14.5 Merge Ordered Sequences]
   [in 6.2.3.1 Splicing]
merge
   defined [in 13.4.6 Merge Two Adjacent Sequences into One]
messages class [in 24.2.1.1 The Standard Facets]
messages<> [in 24.2.1.1 The Standard Facets]
min() [in 13.3.6 Locate Maximum or Minimum Element]
min_element() [in 13.3.6 Locate Maximum or Minimum Element]
mismatch() [in 13.3.7 Locate the First Mismatched Elements in Parallel Sequences]
   [in 13.6.4 Test Two Sequences for Pairwise Equality]
monetary classes [in 24.2.1.1 The Standard Facets]
moneypunct<> [in 24.2.1.1 The Standard Facets]
money_get<> [in 24.2.1.1 The Standard Facets]
money_put<> [in 24.2.1.1 The Standard Facets]
multibyte character encodings [in 23.3.1 Multibyte Encodings]
   uses of [in 23.3.1.4 Uses of the Three Multibyte Encodings]
multibyte characters, converting to wide [in 23.3.2 Wide Characters]
multidimensional array [in 4.4 Container Types Not Found in the C++ Standard Library]
multimap
   comparing elements [in 9.2.7 Element Comparisons]
   defined [in 9.1 The map Data Abstraction]
   example [in 9.3.3 Example - A Concordance]
   include file [in 9.1.1 Include files]
   insertion and access [in 9.2.3 Insertion and Access]
   iterators for [in 9.2.5 Iterators]
   removing values from [in 9.2.4 Removal of Values]
   searching and counting [in 9.2.6 Searching and Counting]
   type definitions for [in 9.2.2 Type Definitions]
multiset
   defined [in 8.1 The set Data Abstraction]
   include file [in 8.1.1 Include Files]
   inserting into [in 8.2.3 Insertion]
   iterators for [in 8.2.6 Iterators]
   operations for [in 8.2 set and multiset Operations]
      [in 8.2.7 set Operations]
   removing elements from [in 8.2.4 Removal of Elements from a set]
   searching and counting elements [in 8.2.5 Searching and Counting]
   type definitions for [in 8.2.2 Type Definitions]
   union and intersection [in 8.2.7.2 Set Union or Intersection]
Multithread-Safe
   Level 2 [in 44.1 Multithread-Safe - Level 2]
multithreading
   defining Multithread-Safe, Level 2 [in 44.1 Multithread-Safe - Level 2]
   locking mechanism [in 44.2 The Locking Mechanism]
mutex objects [in 44.2 The Locking Mechanism]

N

Native Language Support (NLS) [in 24.1 The C Locale]
negators
   defined [in 3.5 Negators and Binders]
new operator [in 4.3 Memory Management Issues]
new
   facet object creation [in 25.2 Facet Lifetimes]
next_permutation() [in 13.4.5 Generate Permutations in Sequence]
NLS [in 24.1 The C Locale]
none() [in 8.4.3 Accessing and Testing Elements]
norm() [in 20.2.6 Norm and Absolute Value]
noskipws [in 28.5.1 Skipping Characters]
nth element algorithm [in 14.3 nth Element]
nth_element() [in 14.3 nth Element]
null pointers [in 2.1 Introduction to Iterators]
numeric classes [in 24.2.1.1 The Standard Facets]
numeric_limits [in 21.1 Overview]
   common members [in 21.3.1 Members Common to All Types]
   floating point members [in 21.3.2 Members Specific to Floating Point Values]
   members [in 21.3 numeric_limits Members]
numpunct facet interface [in 25.5 Modifying a Standard Facet's Behavior]
numpunct<> [in 24.2.1.1 The Standard Facets]
num_get<> [in 24.2.1.1 The Standard Facets]
num_put<> [in 24.2.1.1 The Standard Facets]

O

online documentation
   location [in 1.4.1 Locations of Online Documentation]
open mode
   binary [in 30.4 Binary and Text Mode]
   flags [in 30.3.1 The Open Mode Flags]
   overview [in 30.3 The Open Mode]
open modes
   ate, app, and trunc [in 30.3.1.1 The in and out Open Modes]
   binary [in 30.3.1.2 The Open modes ate, app, and trunc]
      [in 30.4 Binary and Text Mode]
   combining [in 30.3.2 Combining Open Modes]
   default [in 30.3.3 Default Open Modes]
   for string streams [in 31.3 The Open Modes]
   in and out [in 30.3.1.1 The in and out Open Modes]
open() [in 27.4.2.2 The File Buffer]
operator new [in 4.3 Memory Management Issues]
operator>>() [in 27.4.1.4 The Input and Output Streams]
   [in 28.2 Input and Output Operators]
operator<<() [in 27.4.1.4 The Input and Output Streams]
   [in 28.2 Input and Output Operators]
ordered collection algorithms [in 14.1 Overview]
   include files [in 14.1.1 Include Files]
ordered sequence
   defined [in 14.1 Overview]
ordinary pointers [in 2.2.1.1 Kinds of Input Iterators]
ostream [in 27.4.1.4 The Input and Output Streams]
ostream_iterator [in 2.3.2 Output Stream Iterators]
ostrstream
   deprecated [in 27.4.1 The Internal Structure of the Formatting Layer]
      [in 45.4 String Streams]
out()
   return codes [in 40.4 Error Indication in Code Conversion Facets]
output iterators [in 2.2 Varieties of Iterators]
   [in 2.2.2 Output Iterators]
output stream iterators [in 2.3.2 Output Stream Iterators]
output streams
   flush() function [in 35.2.1 Output Streams]
out|trunc [in 30.3.1.2 The Open modes ate, app, and trunc]
overflow() area, defined [in 39.1.1 The streambuf Hierarchy]
overflow() [in 27.4.2.1 The Stream Buffer]

P

pairwise equality [in 13.6.4 Test Two Sequences for Pairwise Equality]
partial sort algorithm [in 14.2.1 Partial Sort]
partial sum
   defined [in 13.7.2 Partial Sums]
partial_sort() [in 14.2.1 Partial Sort]
partial_sort_copy() [in 14.2.1 Partial Sort]
partial_sum() [in 13.7.2 Partial Sums]
partition() [in 13.4.4 Partition a Sequence into Two Groups]
performance issues
   dynamic casts and exception handling [in 38.4.3 The Manipulator]
permutation
   defined [in 13.4.5 Generate Permutations in Sequence]
phase angle
   complex [in 20.2.6 Norm and Absolute Value]
phoneNo [in 26.2 A Phone Number Class]
phone_put [in 26.3 A Phone Number Formatting Facet Class]
pointers
   as container values [in 11.3 Example Program - Event-Driven Simulation]
      [in 4.3 Memory Management Issues]
   null [in 2.1 Introduction to Iterators]
pointer_to_binary_function [in 3.4.2 Adapting Non-member or Static Member Functions]
pointer_to_unary_function [in 3.4.2 Adapting Non-member or Static Member Functions]
polar() [in 20.2.1 Declaring Complex Numbers]
pop() [in 10.2 The stack Data Abstraction]
   [in 11.2 The priority queue Operations]
pop_back() [in 5.2.5 Inserting and Removing Elements]
pop_heap() [in 14.7 heap Operations]
predefined streams [in 28.1 The Predefined Streams]
   are synchronous streams [in 35.5 Synchronizing the Standard Iostream Objects]
   input and output [in 28.2 Input and Output Operators]
predicates
   defined [in 3.3 Predicates]
prev_permutation() [in 13.4.5 Generate Permutations in Sequence]
primitive caching [in 26.9 Improving the Inserter Function]
primitives [in 16.4.1 The iterator_traits Template]
priority queue [in 9.3.2 An Example - Graphs]
   underlying container [in 11.2.1 Declaration and Initialization of priority queue]
   declaring and initializing [in 11.2.1 Declaration and Initialization of priority queue]
   defined [in 11.1 The priority queue Data Abstraction]
   example [in 11.3 Example Program - Event-Driven Simulation]
   include file [in 11.1.1 Include Files]
   operations for [in 11.2 The priority queue Operations]
pubsync() [in 35.2 Explicit Synchronization]
push(newElement) [in 10.2 The stack Data Abstraction]
push(T) [in 11.2 The priority queue Operations]
push_back() [in 14.7 heap Operations]
   [in 5.2.5 Inserting and Removing Elements]
   [in 6.2.3 Placing Elements into a list]
push_front() [in 6.2.3 Placing Elements into a list]
push_heap() [in 14.7 heap Operations]
put area, defined [in 39.1.1 The streambuf Hierarchy]
put() [in 27.4.1.4 The Input and Output Streams]
   [in 32.4 Improved Extractors and Inserters]
pword() [in 36.2 An Example - Storing a Date Format String]
   [in 36.3 Another Look at the Date Format String]

Q

queue
   declaring and initializing [in 10.3.2 Declaration and Initialization of queue]
   defined [in 10.1 Overview]
      [in 10.3 The queue Data Abstraction]
   example program [in 10.3.3 Example Program - Bank Teller Simulation]
   include file [in 10.3.1 Include Files]
   operations for [in 10.3 The queue Data Abstraction]

R

radix character [in 23.2.2 Numbers]
radix sort [in 7.3 Example Program - Radix Sort]
random access iterators [in 2.2 Varieties of Iterators]
   [in 2.2 Varieties of Iterators]
   [in 2.2.5 Random Access Iterators]
random number generators [in 3.2.2.3 To Access or Set State Information]
randomInteger() [in 11.3.1 Example Program - An Ice Cream Store Simulation]
   [in 2.2.5 Random Access Iterators]
random_shuffle() [in 13.4.7 Randomly Rearrange Elements in a Sequence]
rbegin() [in 5.2.6 Iteration]
   [in 8.2.6 Iterators]
   [in 9.2.5 Iterators]
rdbuf() [in 34.2.1 Copying a Stream's Data Members]
   [in 34.2.2 Sharing Stream Buffers Inadvertently]
   [in 34.3.3 Input and Output to the Same Stream]
   [in 34.4 Copies of the Stream Buffer]
reachable iterators [in 2.1 Introduction to Iterators]
real() [in 20.2.2 Accessing Complex Number Values]
reference counting [in 24.4 The Locale Object]
registration of callback functions [in 26.9.1 Primitive Caching]
   [in 37.2 An Example]
removal algorithms [in 13.5 Removal Algorithms]
   for runs of similar values [in 13.5.2 Remove Runs of Similar Values]
   for unwanted elements [in 13.5.1 Remove Unwanted Elements]
remove() [in 12.2.6 Insertion, Removal, and Replacement]
   [in 13.5.1 Remove Unwanted Elements]
   [in 6.2.4 Removing Elements]
remove_copy() [in 13.5.1 Remove Unwanted Elements]
remove_copy_if() [in 13.5.1 Remove Unwanted Elements]
remove_if() [in 13.5.1 Remove Unwanted Elements]
   [in 6.2.4 Removing Elements]
rend() [in 5.2.6 Iteration]
   [in 8.2.6 Iterators]
   [in 9.2.5 Iterators]
replace() [in 13.4.2 Replace Certain Elements With Fixed Value]
replace_copy() [in 13.4.2 Replace Certain Elements With Fixed Value]
replace_copy_if() [in 13.4.2 Replace Certain Elements With Fixed Value]
replace_if() [in 13.4.2 Replace Certain Elements With Fixed Value]
replacing a facet [in 25.5 Modifying a Standard Facet's Behavior]
reserve() [in 12.2.2 Resetting Size and Capacity]
   [in 5.2.4 Extent and Size-Changing Operations]
reset() [in 8.4.3 Accessing and Testing Elements]
resize() [in 12.2.2 Resetting Size and Capacity]
   [in 5.2.4 Extent and Size-Changing Operations]
   [in 6.2.5 Extent and Size-Changing Operations]
restrictions
   imbuing locales [in 42.2 When to Imbue a New Locale]
   on connecting streambuf objects [in 39.3 Connecting iostream and streambuf Objects]
   on standard iostreams [in 27.3 How the Standard Iostreams Help Solve Problems]
   user-defined types [in 41.1.1 Requirements for User-Defined Character Types]
return codes, in and out functions [in 40.4 Error Indication in Code Conversion Facets]
reverse iterators [in 2.2.6 Reverse Iterators]
reverse() [in 13.4.1 Reverse Elements in a Sequence]
   [in 6.2.10 In-Place Transformations]
reverse_copy() [in 2.2.4 Bidirectional Iterators]
rfind() [in 12.2.9 Searching Operations]
rotate() [in 13.4.3 Rotate Elements Around a Midpoint]
rotation
   defined [in 13.4.3 Rotate Elements Around a Midpoint]
runtime errors [in 18.1 Overview]
runtime-type identification (RTTI) [in 38.5 Using iword/pword for RTTI in Derived Streams]
runtime_error [in 18.2 The Standard Exception Hierarchy]

S

safety
   in connecting iostreams and streambufs [in 39.3 Connecting iostream and streambuf Objects]
scalar-producing algorithms
   counting elements that satisfy conditions [in 13.6.1 Count the Number of Elements That Satisfy a Condition]
   defined [in 13.6 Scalar-Producing Algorithms]
   for computing an inner product [in 13.6.3 Generalized Inner Product]
   reducing to single values [in 13.6.1 Count the Number of Elements That Satisfy a Condition]
      [in 13.6.2 Reduce Sequence to a Single Value]
   testing for pairwise equality [in 13.6.4 Test Two Sequences for Pairwise Equality]
Schonfinkel, Moses [in 3.5 Negators and Binders]
search() [in 13.3.4 Find a Sub-Sequence within a Sequence]
   [in 13.3.4 Find a Sub-Sequence within a Sequence]
searching algorithms [in 13.3 Searching Operations]
   for a sub-sequence [in 13.3.4 Find a Sub-Sequence within a Sequence]
   for consecutive duplicate elements [in 13.3.1 Find an Element Satisfying a Condition]
      [in 13.3.2 Find Consecutive Duplicate Elements]
   for elements satisfying conditions [in 13.3.1 Find an Element Satisfying a Condition]
   for first occurences [in 13.3.3 Find the First Occurrence of Any Value from a Sequence]
   for maximum or minimum element [in 13.3.6 Locate Maximum or Minimum Element]
   for mismatched elements [in 13.3.6 Locate Maximum or Minimum Element]
      [in 13.3.7 Locate the First Mismatched Elements in Parallel Sequences]
   for the last occurrence [in 13.3.5 Find the Last Occurrence of a Sub-Sequence]
seek functions
   for ifstream [in 30.5 File Positioning]
   for iostream classes [in 30.5.1 How Positioning Works with the Iostream Architecture]
   for ofstream [in 30.5 File Positioning]
seekp [in 30.5 File Positioning]
sequence generators [in 3.2.2.3 To Access or Set State Information]
sequence [in 16.1 Extending the C++ Standard Library]
sequence-generating algorithms [in 13.7 Sequence-Generating Algorithms]
   for adjacent differences [in 13.7.3 Adjacent Differences]
   for partial sums [in 13.7.2 Partial Sums]
   transform [in 13.7.1 Transform One or Two Sequences]
set operations algorithms [in 14.6 set Operations]
set [in 4.4 Container Types Not Found in the C++ Standard Library]
   [in 8.1 The set Data Abstraction]
set() [in 8.4.3 Accessing and Testing Elements]
set
   declaring and initializing [in 8.2.1 Declaration and Initialization of set]
   defined [in 8.1 The set Data Abstraction]
   difference [in 8.2.7.3 Set Difference]
   example [in 8.3 Example Program - A Spelling Checker]
   generic algorithms for [in 8.2.8 Other Generic Algorithms]
   inserting into [in 8.2.3 Insertion]
   operations for [in 8.2 set and multiset Operations]
      [in 8.2.7 set Operations]
   removing elements from [in 8.2.4 Removal of Elements from a set]
   searching and counting elements [in 8.2.5 Searching and Counting]
   subset test [in 8.2.7.1 Subset test]
   type definitions for [in 8.2.2 Type Definitions]
   union and intersection [in 8.2.7.2 Set Union or Intersection]
setw [in 28.3.2 Manipulators]
set_difference() [in 14.6 set Operations]
   [in 14.6 set Operations]
   [in 8.2.7.3 Set Difference]
set_intersection() [in 14.6 set Operations]
   [in 14.6 set Operations]
   [in 8.2.7.2 Set Union or Intersection]
set_symmetric_difference() [in 14.6 set Operations]
   [in 14.6 set Operations]
   [in 8.2.7.3 Set Difference]
set_union() [in 14.5 Merge Ordered Sequences]
   [in 14.6 set Operations]
   [in 8.2.7.2 Set Union or Intersection]
shallow copy [in 4.3 Memory Management Issues]
shift operators, defined [in 28.2 Input and Output Operators]
shift sequences [in 23.3.1.1 JIS Encoding]
shift state [in 23.3.1.1 JIS Encoding]
   maintaining in C locale [in 24.3.1 Common Uses of the C locale]
Shift-JIS encoding [in 23.3.1.1 JIS Encoding]
sieve of Eratosthenes [in 5.4 Example Program - The Sieve of Eratosthenes]
simulation framework example [in 11.3.1 Example Program - An Ice Cream Store Simulation]
simulation programs [in 11.1 The priority queue Data Abstraction]
size() [in 10.2 The stack Data Abstraction]
   [in 11.2 The priority queue Operations]
   [in 12.2.2 Resetting Size and Capacity]
   [in 5.2.4 Extent and Size-Changing Operations]
   [in 6.2.5 Extent and Size-Changing Operations]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]
skipping characters [in 28.5 Formatted Input]
smanip class template [in 33.3.1 The Standard Manipulators]
snapshots, current global locale [in 24.3.2 Common Uses of C++ Locales]
sort() [in 14.2 Sorting Algorithms]
sorting algorithms [in 14.2 Sorting Algorithms]
   partial sort [in 14.2.1 Partial Sort]
sort_heap() [in 14.7 heap Operations]
sparse array [in 4.4 Container Types Not Found in the C++ Standard Library]
splice() [in 6.2.3.1 Splicing]
stable_partition() [in 13.4.4 Partition a Sequence into Two Groups]
stable_sort() [in 14.2 Sorting Algorithms]
stack
   defined [in 10.1 Overview]
      [in 10.1 Overview]
   example [in 10.2.3 Example Program - An RPN Calculator]
   include file [in 10.2.1 Include Files]
C++ Standard Library
   components [in 1.2.1 Components]
   internationalization features [in 23.4 Summary]
standard facet classes [in 24.2.1.1 The Standard Facets]
   collate [in 24.2.1.1 The Standard Facets]
   ctype [in 24.2.1.1 The Standard Facets]
   messages [in 24.2.1.1 The Standard Facets]
   monetary [in 24.2.1.1 The Standard Facets]
   numeric [in 24.2.1.1 The Standard Facets]
   time [in 24.2.1.1 The Standard Facets]
standard facets [in 25.1 Understanding Facet Types]
   defined as templates [in 25.1 Understanding Facet Types]
   modifying behavior [in 25.5 Modifying a Standard Facet's Behavior]
   protected destructors [in 25.2 Facet Lifetimes]
standard iostreams changes
   connecting files and streams [in 45.3.1 Connecting Files and Streams]
   file buffer [in 45.3.2 The File Buffer]
   internationalization [in 45.2 Internationalization]
   string streams [in 45.4 String Streams]
   templatized types [in 45.1 The Character Type]
standard iostreams, differences of this implementation [in 46.1 Extensions]
   file descriptors [in 46.1.1 File Descriptors]
   multithreading [in 46.1.2 Multithreaded Environments]
standard iostreams
   defined [in 27.1 The Standard Iostreams]
   deprecated features [in 27.4.1 The Internal Structure of the Formatting Layer]
      [in 45.4 String Streams]
   differ from traditional [in 45.1 The Character Type]
   extending iostreams [in 27.3 How the Standard Iostreams Help Solve Problems]
   formatting layer [in 27.4.1 The Internal Structure of the Formatting Layer]
   formatting options [in 28.2 Input and Output Operators]
   how they work [in 27.2 How the Standard Iostreams Work]
   layers of [in 27.2.1 The Iostream Layers]
      [in 27.4 The Internal Structure of the Iostreams Layers]
   transport layer [in 27.4.2 The Transport Layer's Internal Structure]
   used for binary I/O [in 27.3 How the Standard Iostreams Help Solve Problems]
   used for file I/O [in 27.3 How the Standard Iostreams Help Solve Problems]
   used for in-memory I/O [in 27.3 How the Standard Iostreams Help Solve Problems]
   used for internationalized text processing [in 27.3 How the Standard Iostreams Help Solve Problems]
   when to use [in 27.3 How the Standard Iostreams Help Solve Problems]
standard streams, predefined [in 28.1 The Predefined Streams]
Standard Template Library [in 1.2.1 Components]
stdio
   compared with standard iostreams [in 27.1.1 Type Safety]
   defined [in 27.1 The Standard Iostreams]
stream buffer classes [in 27.4.2 The Transport Layer's Internal Structure]
   abstract stream buffer [in 27.4.2.1 The Stream Buffer]
   file buffer [in 27.4.2.2 The File Buffer]
   string stream buffer [in 27.4.2.2 The File Buffer]
stream buffers => See streambuf
stream buffers, when to share
   for I/O to same stream [in 34.3.3 Input and Output to the Same Stream]
   for several format settings for same stream [in 34.3.1 Several Format Settings for the Same Stream]
   for several locales for same stream [in 34.3.2 Several Locales for the Same Stream]
stream buffers
   copies for processing files [in 34.4 Copies of the Stream Buffer]
   deriving new [in 39.2 Deriving New Stream Buffer Classes]
   get area [in 39.1.1 The streambuf Hierarchy]
   inadvertent sharing [in 34.2.2 Sharing Stream Buffers Inadvertently]
   overflow() function [in 39.1.1 The streambuf Hierarchy]
   problems of sharing [in 34.2.2 Sharing Stream Buffers Inadvertently]
   put area [in 39.1.1 The streambuf Hierarchy]
   seeking operations [in 39.1.1 The streambuf Hierarchy]
   setting locale [in 34.3.2 Several Locales for the Same Stream]
   sync operation [in 39.1.1 The streambuf Hierarchy]
   three kinds [in 39.1.1 The streambuf Hierarchy]
stream class, deriving new
   choosing a base class [in 38.2 Choosing a Base Class]
   choosing base class [in 38.2 Choosing a Base Class]
   date inserter [in 38.4.2 The Date Inserter]
   example code [in 38.4.1 The Derived Stream Template]
   from file stream or string stream [in 38.3.1 Derivation from File Stream or String Stream Classes std -:{i,o}fstream or std::{i,o}stringstream]
   from stream classes [in 38.3.1 Derivation from File Stream or String Stream Classes std -:{i,o}fstream or std::{i,o}stringstream]
   initializing the base class [in 38.3 Construction and Initialization]
   manipulator [in 38.4.3 The Manipulator]
   overview [in 38.1 Deriving a New Stream Type]
   performance issues [in 38.4.4 A Remark on Performance]
   providing stream buffer [in 38.3.2 Derivation from the Stream Classes std -:basic_{i,o}stream]
   using iword/pword [in 38.5 Using iword/pword for RTTI in Derived Streams]
stream classes hierarchy [in 27.4.1 The Internal Structure of the Formatting Layer]
stream classes
   base class [in 27.4.1.1 Iostreams Base Class ios_base]
   basic_ios<> [in 27.4.1.2 The Iostreams Character Type-Dependent Base Class]
   character traits [in 27.4.1.3 Character Traits]
   file streams [in 27.4.1.5 The File Streams]
   formatting layer [in 27.4.1 The Internal Structure of the Formatting Layer]
   input and output streams [in 27.4.1.3 Character Traits]
   internal structure [in 27.4.1 The Internal Structure of the Formatting Layer]
   string streams [in 27.4.1.6 The String Streams]
   type-dependent base class [in 27.4.1.2 The Iostreams Character Type-Dependent Base Class]
   type-independent base class [in 27.4.1.1 Iostreams Base Class ios_base]
   virtual base class [in 27.4.1.2 The Iostreams Character Type-Dependent Base Class]
stream errors
   catching exceptions [in 29.3 Catching Exceptions]
   checking for errors [in 29.2 Checking the Stream State]
stream iterator [in 2.3 Stream Iterators]
stream iterators
   defined [in 43.1 Definition]
   differ from container iterators [in 43.2 Differences between Stream Iterators and Container Iterators]
   error indication [in 43.3 Error Indication by Stream Iterators]
   several on one stream [in 43.4 Several Iterators on One Stream]
stream objects
   can't be copied or assigned to each other [in 34.2 Copying and Assigning Stream Objects]
   copying data causes shared buffer [in 34.2.1 Copying a Stream's Data Members]
   copying data means copying behavior [in 34.2.2 Sharing Stream Buffers Inadvertently]
   copying data members [in 34.2.1 Copying a Stream's Data Members]
   file descriptors for copying data [in 34.2.2 Sharing Stream Buffers Inadvertently]
   pointers instead of copies [in 34.2.3 Using Pointers or References to Streams]
   references and pointers better than copies [in 34.2.3 Using Pointers or References to Streams]
   references instead of copies [in 34.2.3 Using Pointers or References to Streams]
   restrictions on copying [in 34.2 Copying and Assigning Stream Objects]
   separate file buffer object for copying stream data [in 34.2.2 Sharing Stream Buffers Inadvertently]
stream storage
   adding data [in 36.1 Adding Data to a Stream]
   and date format string manipulator [in 36.3 Another Look at the Date Format String]
   overview [in 36.2 An Example - Storing a Date Format String]
   standard and C library compared [in 36.2 An Example - Storing a Date Format String]
stream type, deriving new [in 38.1 Deriving a New Stream Type]
streambuf interface
   for locales [in 39.1.2 The streambuf Interface]
   for positioning [in 39.1.2 The streambuf Interface]
   for reading [in 39.1.2 The streambuf Interface]
   for writing [in 39.1.2 The streambuf Interface]
streambuf => See also basic_streambuf and stream buffers
streambuf, deriving new
   implementing new log stream class [in 39.2 Deriving New Stream Buffer Classes]
   implementing overflow function [in 39.2 Deriving New Stream Buffer Classes]
   new logstream class [in 39.2 Deriving New Stream Buffer Classes]
   using new log buffer class [in 39.2 Deriving New Stream Buffer Classes]
streambuf
   class hierarchy [in 39.1.1 The streambuf Hierarchy]
   interface [in 39.1.1 The streambuf Hierarchy]
   overview [in 39.1 Class basic_streambuf - the Sequence Abstraction]
streams and stream buffers, collaboration [in 27.4.2.3 The String Stream Buffer]
streams
   error state of [in 29.1 About Flags]
   explicit synchronization of [in 35.2 Explicit Synchronization]
   forcing buffers to empty to files [in 35.2 Explicit Synchronization]
   sharing files [in 35.1 Sharing Files Among Streams]
string input [in 28.5.2 Input of Strings]
string streams [in 27.4.1.5 The File Streams]
   [in 31.1 About String Streams]
   class templates [in 31.1 About String Streams]
   internal buffer [in 31.2 The Internal Buffer]
   open modes [in 31.3 The Open Modes]
string traits class [in 17.2 Using the Traits Technique]
string
   appending to [in 12.2.3 Assignment, Append, and Swap]
   assigning value [in 12.2.3 Assignment, Append, and Swap]
   comparisons [in 12.2.7 Copy and Substring]
   declaring and initializing [in 12.2.1 Declaration and Initialization of string]
   defined [in 12.1 The string Abstraction]
   example [in 12.3 Example Function - Split a Line into Words]
   include file [in 12.1.1 Include Files]
   individual character access [in 12.2.4 Character Access]
   inserting, removing, replacing [in 12.2.6 Insertion, Removal, and Replacement]
   iterators for [in 12.2.5 Iterators]
   resetting size [in 12.2.2 Resetting Size and Capacity]
   searching operations [in 12.2.8 string Comparisons]
   substrings [in 12.2.7 Copy and Substring]
   swapping values [in 12.2.3 Assignment, Append, and Swap]
string_char_trait [in 17.2 Using the Traits Technique]
Stroustrup, Bjarne [in 1.1 Welcome]
strstream
   deprecated [in 27.4.1 The Internal Structure of the Formatting Layer]
      [in 45.4 String Streams]
strstreambuf [in 39.1.1 The streambuf Hierarchy]
   deprecated [in 45.4 String Streams]
subscript operator [in 12.2.4 Character Access]
   [in 5.2.3 Subscripting a vector]
   [in 9.2.3 Insertion and Access]
substr() [in 12.2.7 Copy and Substring]
swap() [in 12.2.3 Assignment, Append, and Swap]
   [in 13.2.4 Swap Values from Two Parallel Ranges]
   [in 5.2.1 Declaration and Initialization of vectors]
   [in 6.2.1 Declaration and Initialization of lists]
   [in 8.2.1 Declaration and Initialization of set]
   [in 9.2.1 Declaration and Initialization of map]
swap_ranges() [in 13.2.4 Swap Values from Two Parallel Ranges]
symbolic constants [in 21.1 Overview]
sync() [in 35.2.2 Input Streams]
   when to use [in 35.2.2 Input Streams]
synchronization
   automatic [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
      [in 35.4 Implicit Synchronization by Tying Streams]
   explicit [in 35.2 Explicit Synchronization]
   implicit [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
      [in 35.4 Implicit Synchronization by Tying Streams]
   switching off [in 35.6 Synchronization with the C Standard I/O]
   with C Standard I/O [in 35.6 Synchronization with the C Standard I/O]
   with predefined streams [in 35.5 Synchronizing the Standard Iostream Objects]

T

table
   C locale categories [in 24.1 The C Locale]
   default open modes [in 30.3.3 Default Open Modes]
   flag names and effects [in 30.3.1 The Open Mode Flags]
   flags and corresponding error categories [in 29.1 About Flags]
      [in 29.1 About Flags]
   flags and their effects on operators [in 28.3.1.2 Parameters That Can Have Only a Few Different Values]
   format parameters with arbitrary values [in 28.3.1.1 Parameters That Can Have an Arbitrary Value]
   manipulators [in 28.3.2 Manipulators]
   open modes and C stdio counterparts [in 30.3.2 Combining Open Modes]
   possible seeks for seekp [in 30.5 File Positioning]
   predefined standard streams and C standard files [in 28.1 The Predefined Streams]
   stream member functions for error checking [in 29.2 Checking the Stream State]
technical support [in 1.7 Technical Support]
tellp [in 30.5 File Positioning]
test() [in 8.4.3 Accessing and Testing Elements]
text I/O
   defined [in 27.2 How the Standard Iostreams Work]
text mode [in 30.4 Binary and Text Mode]
text processing [in 27.2 How the Standard Iostreams Work]
time classes [in 24.2.1.1 The Standard Facets]
time_get [in 32.4 Improved Extractors and Inserters]
time_get<> [in 24.2.1.1 The Standard Facets]
time_put [in 32.4 Improved Extractors and Inserters]
time_put<> [in 24.2.1.1 The Standard Facets]
top() [in 10.2 The stack Data Abstraction]
   [in 11.2 The priority queue Operations]
to_string() [in 8.4.5 Conversions]
to_ulong() [in 8.4.5 Conversions]
traditional iostreams
   defined [in 27.1 The Standard Iostreams]
training [in 1.6 Consulting Services and Training]
traits parameter [in 17.1 Defining the Problem]
traits template example [in 17.2 Using the Traits Technique]
traits [in 17.2 Using the Traits Technique]
transcendental functions [in 20.2.8 Transcendental Functions]
transform() [in 13.7.1 Transform One or Two Sequences]
transformation algorithms [in 13.4 In-Place Transformations]
   for merging [in 13.4.6 Merge Two Adjacent Sequences into One]
   for partitioning elements [in 13.4.4 Partition a Sequence into Two Groups]
   for permutations [in 13.4.5 Generate Permutations in Sequence]
   for replacing fixed-value elements [in 13.4.2 Replace Certain Elements With Fixed Value]
   for reversing elements in a sequence [in 13.4.1 Reverse Elements in a Sequence]
   for rotating elements [in 13.4.3 Rotate Elements Around a Midpoint]
   for rotation [in 13.4.3 Rotate Elements Around a Midpoint]
   rearranging sequence elements [in 13.4.7 Randomly Rearrange Elements in a Sequence]
transport layer
   defined [in 27.2.1.2 The Transport Layer]
   internal structure [in 27.4.1.6 The String Streams]
   stream buffer classes [in 27.4.2 The Transport Layer's Internal Structure]
tree [in 4.4 Container Types Not Found in the C++ Standard Library]
trigonometric functions [in 20.2.7 Trigonometric Functions]
trunc [in 30.3.1.2 The Open modes ate, app, and trunc]
type safety [in 27.1 The Standard Iostreams]

U

unary_function [in 3.2.2.1 To Employ Existing C++ Standard Library Function Objects]
underflow() [in 27.4.2.1 The Stream Buffer]
unique() [in 13.5.2 Remove Runs of Similar Values]
   [in 6.2.4 Removing Elements]
unique_copy() [in 13.5.2 Remove Runs of Similar Values]
unitbuf flag [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
   switching off [in 35.3 Implicit Synchronization Using the unitbuf Format Flag]
upper_bound() [in 14.4 Binary Search]
   [in 8.2.5 Searching and Counting]
   [in 9.2.6 Searching and Counting]
user-defined algorithms [in 16.1 Extending the C++ Standard Library]
user-defined containers [in 16.1 Extending the C++ Standard Library]
user-defined types example
   date class for [in 32.2 An Example with a User-Defined Type]
   extractor pattern [in 32.6 Patterns for Extractors and Inserters of User-Defined Types]
   improved extractor [in 32.5.1 Applying the Recommendations to the Example]
   improved inserter [in 32.5.1 Applying the Recommendations to the Example]
   improving inserters and extractors [in 32.5 More Improved Extractors and Inserters]
   improving the extractors and inserters [in 32.4 Improved Extractors and Inserters]
   inserters and extractors for [in 32.3 A Simple Extractor and Inserter for the Example]
   more complete date class [in 32.3 A Simple Extractor and Inserter for the Example]
   pattern for the inserter [in 32.6 Patterns for Extractors and Inserters of User-Defined Types]
user-defined types [in 27.1.2 Extensibility to New Types]
   available in standard iostreams [in 41.1 User-Defined Character Types]
   character classification facet [in 41.2 Defining Traits and Facets for User-Defined Types]
   code conversion facets [in 41.2 Defining Traits and Facets for User-Defined Types]
   defining traits class and facets [in 41.2 Defining Traits and Facets for User-Defined Types]
   example [in 41.1.1 Requirements for User-Defined Character Types]
   traits class declaration [in 41.2 Defining Traits and Facets for User-Defined Types]
   using streams instantiated on [in 41.3 Creating and Using Streams Instantiated on User-Defined Types]
use_facet and has_facet
   type required for [in 25.3 Accessing a Locale's Facets]
use_facet [in 25.3 Accessing a Locale's Facets]

V

valarray [in 22.1 Overview]
   assignment operators [in 22.3 Assignment Operators]
      [in 22.5 Computed Assignment Operators]
   auxiliary array classes [in 22.4.2.4 Indirect Operation]
   auxiliary classes [in 22.1.3 Other Unique Features]
   binary operators [in 22.7.1 Binary Operators]
   boolean mask [in 22.4.2.3 Boolean Mask]
   class that doesn't meet retrictions [in 22.1.2.2 A Class That Doesn't Meet the Type Restrictions]
   class that meets restrictions [in 22.1.2.1 A Class That Meets the Type Restrictions]
   declaring [in 22.2 Declaring a valarray]
   gslice operation [in 22.4.2.2 The gslice Operation]
   include file [in 22.1.4 Header Files]
   index operators [in 22.4.1 Ordinary Index Operators]
   indirect operation [in 22.4.2.4 Indirect Operation]
   member functions [in 22.6 Member Functions]
   performance issues [in 22.1.1 Performance Issues]
   slice operation [in 22.4.2.1 The Slice Operation]
   subset operators [in 22.4.2 Subset Operators]
   transcendental functions [in 22.7.2 Transcendental Functions]
   type restrictions [in 22.1.2 Type Restrictions]
   unary operators [in 22.4.3 Unary Operators]
value_comp() [in 9.2.7 Element Comparisons]
value_type [in 16.4.2 The distance and advance Primitives]
vector<bool>
   defined [in 5.3 Boolean Vectors]
vector
   boolean [in 5.3 Boolean Vectors]
   declaring and initializing [in 5.2.1 Declaration and Initialization of vectors]
   defined [in 5.1 The vector Data Abstraction]
   determining maximum values in [in 5.2.9 Useful Generic Algorithms]
   example program [in 5.4 Example Program - The Sieve of Eratosthenes]
   include file [in 5.1.1 Include Files]
   inserting and removing elements [in 5.2.5 Inserting and Removing Elements]
   operations for [in 5.2 vector Operations]
   size and extent changing [in 5.2.4 Extent and Size-Changing Operations]
   sorting [in 5.2.8 Sorting and Sorted vector Operations]
   test for inclusion [in 5.2.7 Test for Inclusion]
   type definitions for [in 5.2.2 Type Definitions]
   useful algorithms for [in 5.2.9 Useful Generic Algorithms]

W

wide characters [in 23.3.2 Wide Characters]
   converting to multibyte [in 23.3.2 Wide Characters]
wstring [in 12.1 The string Abstraction]

X

X/Open consortium [in 24.1 The C Locale]
X/Open messages [in 24.2.1.1 The Standard Facets]
xalloc() [in 36.2 An Example - Storing a Date Format String]
XPG4 [in 24.1 The C Locale]


No previous fileTop of DocumentContentsNo linkNo next file