MSL C++ Reference
1 Introduction
-
- About the MSL C++ Library Reference Manual
2 17 C++ Library
-
- Overview of the MSL C++ Reference
-
- 17.1 Definitions
-
- 17.2 Additional Definitions
-
- 17.3 Methods of Descriptions
-
- 17.3.1 Structure of each sub-clause
-
- 17.3.2 Other Conventions
-
- 17.4 Library-wide Requirements
-
- 17.4.1 Library contents and organization
-
- 17.4.2 Using the library
-
- 17.4.3 Constraints on programs
-
- 17.4.4 Conforming Implementations
-
- 17.4.4.8 Restrictions On Exception Handling
-
- Features not implemented in MSL C++
-
- Template Functionality
-
- ANSI/ISO Library Functionality
3 18 Language Support Library
-
- Overview of Language Support Library
-
- 18.1 Types
-
- 18.2 Implementation properties
-
- 18.2.1 Numeric limits
-
- 18.2.2 C Library
-
- 18.3 Start and termination
-
- 18.4 Dynamic Memory Management
-
- 18.4.1 Storage Allocation and Deallocation
-
- 18.4.1.2 Array Forms
-
- 18.4.1.3 Placement Forms
-
- 18.4.2 Storage Allocation Errors
-
- 18.5 Type identification
-
- 18.5.1 Class type_info
-
- 18.5.2 Class bad_cast
-
- 18.5.3 Class bad_typeid
-
- 18.6 Exception Handling
-
- 18.6.1 Class Exception
-
- 18.6.2 Violating Exception Specifications
-
- 18.6.3 Abnormal Termination
-
- 18.6.4 uncaught_exception
-
- 18.7 Other Runtime Support
4 19 Diagnostics Library
-
- Overview of Diagnostics library
-
- 19.1 Exception Classes
-
- 19.1.1 Class Logic_error
-
- 19.1.2 Class domain_error
-
- 19.1.3 Class Invalid_argument
-
- 19.1.4 Class Length_error
-
- 19.1.5 Class Out_of_range
-
- 19.1.6 Class Runtime_error
-
- 19.1.7 Class Range_error
-
- 19.1.8 Class Overflow_error
-
- 19.1.9 Class Underflow_error
-
- 19.2 Assertions
-
- 19.3 Error Numbers
5 20 General Utilities Libraries
-
- Overview of General utilities library
-
- 20.1 Requirements
-
- 20.1.1 Equality Comparisons
-
- 20.1.2 Less Than Comparison
-
- 20.1.3 Copy Construction
-
- 20.1.4 Default Construction
-
- 20.1.5 Allocator Requirements
-
- 20.2 Utility Components
-
- 20.2.1 Operators
-
- 20.2.2 Pairs
-
- 20.3 Function objects
-
- 20.3.1 Base
-
- 20.3.2 Arithmetic operations
-
- 20.3.3 Comparisons
-
- 20.3.4 Logical operations
-
- 20.3.5 Negators
-
- 20.3.6 Binders
-
- 20.3.7 Adaptors for Pointers to Functions
-
- 20.3.8 Adaptors for Pointers to Members
-
- 20.4 Memory
-
- 20.4.1 The default allocator
-
- 20.4.1.1 allocator members
-
- 20.4.1.2 allocator globals
-
- 20.4.2 Raw storage iterator
-
- 20.4.3 Temporary buffers
-
- 20.4.4 Specialized Algorithms
-
- 20.4.5 Template Class Auto_ptr
-
- 20.4.5.2 Auto_ptr Members
-
- 20.4.5.3 auto_ptr conversions
-
- 20.4.6 C Library
-
- 20.5 Date and Time
6 21 Strings Library
-
- Overview of Strings Classes
-
- 21.1 Character traits
-
- 21.1.1 Character Trait Definitions
-
- 21.1.2 Character Trait Requirements
-
- 21.1.3 Character Trait Type Definitions
-
- 21.1.4 struct char_traits<T>
-
- 21.2 String Classes
-
- 21.3 Class Basic_string
-
- 21.3.1 Constructors and Assignments
-
- 21.3.2 Iterator Support
-
- 21.3.3 Capacity
-
- 21.3.4 Element Access
-
- 21.3.5 Modifiers
-
- 21.3.6 String Operations
-
- 23.3.7 Non-Member Functions and Operators
-
- 21.3.7.9 Inserters and extractors
-
- 23.4 Null Terminated Sequence Utilities
7 22 Localization Library
-
- Overview of Localization library
-
- 22.1 Locales
-
- 22.1.1 Class locale
-
- 22.1.2 Locale Globals
-
- 22.1.3 Convenience Interfaces
-
- 22.2 Standard Locale Categories
-
- 22.2.1 The Ctype Category
-
- 22.2.2 The Numeric Category
-
- 22.2.3 The Numeric Punctuation Facet
-
- 22.2.4 The Collate Category
-
- 22.2.5 The Time Category
-
- 22.2.6 The Monetary Category
-
- 22.2.7 The Message Retrieval Category
-
- 22.2.8 Program-defined Facets
-
- 22.3 C Library Locales
8 23 Containers Library
-
- Overview of Containers library
-
- 23.1 Container Requirements
-
- 23.1.1 Sequences Requirements
-
- 23.1.2 Associative Containers Requirements
-
- 23.2 Sequences
-
- 23.2.1 Template Class Deque
-
- 23.2.2 Template Class List
-
- 23.2.3 Container adaptors
-
- 23.2.3.1 Template Class Queue
-
- 23.2.3.2 Template Class Priority_queue
-
- 23.2.3.3 Template Class Stack
-
- 23.2.4 Template Class Vector
-
- 23.2.5 Class Vector<bool>
-
- 23.3 Associative Containers
-
- 23.3.1 Template Class Map
-
- 23.3.2 Template Class Multimap
-
- 23.3.3 Template Class Set
-
- 23.3.4 Template Class Multiset
-
- 23.3.5 Template Class Bitset
-
- Template Class Bitset
9 24 Iterators Library
-
- Overview of Iterators library
-
- 24.1 Requirements
-
- 24.1.1 Input Iterators
-
- 24.1.2 Output Iterators
-
- 24.1.3 Forward Iterators
-
- 24.1.4 Bidirectional Iterators
-
- 24.1.5 Random Access Iterators
-
- 24.2 Header <iterator>
-
- 24.3 Iterator Primitives
-
- 24.3.1 Iterator Traits
-
- 24.3.2 Basic Iterator
-
- 24.3.3 Standard Iterator Tags
-
- 24.4 Predefined Iterators
-
- 24.4.1 Reverse iterators
-
- 24.4.2 Insert Iterators
-
- 24.5 Stream Iterators
-
- 24.5.1 Template Class Istream_iterator
-
- 24.5.2 Template Class Ostream_iterator
-
- 24.5.3 Template Class Istreambuf_iterator
-
- 24.5.4 Template Class Ostreambuf_iterator
10 25 Algorithms Library
-
- Overview of Algorithms Library
-
- Header <algorithm>
-
- 25.1 Non-modifying Sequence Operations
-
- 25.2 Mutating Sequence Operators
-
- 25.3 Sorting And Related Operations
-
- 25.4 C library algorithms
11 26 Numerics Library
-
- Overview of Numerics Library
-
- 26.1 Numeric type requirements
-
- 26.2 Complex Class Library
-
- _MSL_CX_LIMITED_RANGE
-
- Header <complex>
-
- 26.2.3 Complex Specializations
-
- Complex Template Class
-
- Constructors and Assignments
-
- Complex Member Functions
-
- Operators
-
- Overloaded Operators and Functions
-
- Complex Operators
-
- Complex Value Operations
-
- Complex Transcendentals
-
- 26.3 Numeric arrays
-
- 26.3.1 Header <valarray>
-
- 26.3.2 Template Class Valarray
-
- 26.3.3 Valarray Non-member Operations
-
- 26.3.4 Class slice
-
- 26.3.5 Template Class Slice_array
-
- 26.3.6 Class Gslice
-
- 26.3.7 Template Class Gslice_array
-
- 26.3.8 Template Class Mask_array
-
- 26.3.9 Template Class Indirect_array
-
- 26.4 Generalized Numeric Operations
-
- Header <numeric>
-
- 26.5 C Library
-
- <cmath>
-
- <cstdlib>
12 27.1 Input and Output Library
-
- Overview of Input and Output Library
-
- Input and Output Library Summary
-
- 27.1 Iostreams requirements
-
- 27.1.1 Definitions
-
- 27.1.2 Type requirements
-
- 27.1.2.5 Type SZ_T
13 27.2 Forward Declarations
-
- Overview of Streams and String Forward Declarations.
-
- Header <iosfwd>
-
- Header <stringfwd>
14 27.3 Standard Iostream Objects
-
- Overview of Standard Input and Output Stream Objects.
-
- Header <iostream>
-
- Stream Buffering
-
- 27.3.1 Narrow stream objects
-
- 27.3.2 Wide stream objects
15 27.4 Iostreams Base Classes
-
- Overview of Input and Output Stream Base Classes
-
- Header <ios>
-
- Template Class fpos
-
- 27.4.1 Typedef Declarations
-
- 27.4.2 Class ios_base
-
- 27.4.3.1 Typedef Declarations
-
- 27.4.3.1.1 failure
-
- 27.4.3.1.1.1 failure
-
- failure::what
-
- 27.4.3.1.2 Type fmtflags
-
- 27.4.3.1.3 Type iostate
-
- 27.4.3.1.4 Type openmode
-
- 27.4.3.1.5 Type seekdir
-
- 27.4.3.1.6 Class Init
-
- Class Init Constructor
-
- 27.4.3.2 ios_base fmtflags state functions
-
- flags
-
- setf
-
- unsetf
-
- precision
-
- width
-
- 27.4.3.3 ios_base locale functions
-
- imbue
-
- getloc
-
- 27.4.3.4 ios_base storage function
-
- xalloc
-
- iword
-
- pword
-
- register_callback
-
- sync_with_stdio
-
- 27.4.3.5 ios_base Constructor
-
- 27.4.4 Template class basic_ios
-
- 27.4.4.1 basic_ios Constructor
-
- 27.4.4.2 Member Functions
-
- tie
-
- rdbuf
-
- imbue
-
- fill
-
- copyfmt
-
- 27.4.4.3 basic_ios iostate flags functions
-
- operator bool
-
- operator !
-
- rdstate
-
- clear
-
- setstate
-
- good
-
- eof
-
- fail
-
- bad
-
- exceptions
-
- 27.4.5 ios_base manipulators
-
- 27.4.5.1 fmtflags manipulators
-
- 27.4.5.2 adjustfield manipulators
-
- 27.4.5.3 basefield manipulators
-
- 27.4.5.4 floatfield manipulators
-
- Overloading Manipulators
16 27.5 Stream Buffers
-
- Overview of Stream Buffers
-
- Header <streambuf>
-
- 27.5.1 Stream buffer requirements
-
- 27.5.2 Template class basic_streambuf<charT, traits>
-
- 27.5.2.1 basic_streambuf Constructor
-
- 27.5.2.2 basic_streambuf Public Member Functions
-
- 27.5.2.2.1 Locales
-
- basic_streambuf::pubimbue
-
- basic_streambuf::getloc
-
- 27.5.2.2.2 Buffer Management and Positioning
-
- basic_streambuf::pubsetbuf
-
- basic_streambuf::pubseekoff
-
- basic_streambuf::pubseekpos
-
- basic_streambuf::pubsync
-
- 27.5.2.2.3 Get Area
-
- basic_streambuf::in_avail
-
- basic_streambuf::snextc
-
- basic_streambuf::sbumpc
-
- basic_streambuf::sgetc
-
- basic_streambuf::sgetn
-
- 27.5.2.2.4 Putback
-
- basic_streambuf::sputback
-
- basic_streambuf::sungetc
-
- 27.5.2.2.5 Put Area
-
- basic_streambuf::sputc
-
- basic_streambuf::sputn
-
- 27.5.2.3 basic_streambuf Protected Member Functions
-
- 27.5.2.3.1 Get Area Access
-
- basic_streambuf::eback
-
- basic_streambuf::gptr
-
- basic_streambuf::egptr
-
- basic_streambuf::gbump
-
- basic_streambuf::setg
-
- 27.5.2.3.2 Put Area Access
-
- basic_streambuf::pbase
-
- basic_streambuf::pptr
-
- basic_streambuf::epptr
-
- basic_streambuf::pbump
-
- basic_streambuf::setp
-
- 27.5.2.4 basic_streambuf Virtual Functions
-
- 27.5.2.4.1 Locales
-
- basic_streambuf::imbue
-
- 27.5.2.4.2 Buffer Management and Positioning
-
- basic_streambuf::setbuf
-
- basic_streambuf::seekoff
-
- basic_streambuf::seekpos
-
- basic_streambuf::sync
-
- 27.5.2.4.3 Get Area
-
- basic_streambuf::showmanc
-
- basic_streambuf::xsgetn
-
- basic_streambuf::underflow
-
- basic_streambuf::uflow
-
- 27.5.2.4.4 Putback
-
- basic_streambuf::pbackfail
-
- 27.5.2.4.5 Put Area
-
- basic_streambuf::xsputn
-
- basic_streambuf::overflow
17 27.6 Formatting And Manipulators
-
- Overview of Formatting and Manipulators
-
- Headers
-
- Header <istream>
-
- Header <ostream>
-
- Header <iomanip>
-
- 27.6.1 Input Streams
-
- 27.6.1.1 Template class basic_istream
-
- 27.6.1.1.1 basic_istream Constructors
-
- 27.6.1.1.2 Class basic_istream::sentry
-
- Class basic_istream::sentry Constructor
-
- sentry::Operator bool
-
- 27.6.1.2 Formatted input functions
-
- 27.6.1.2.1 Common requirements
-
- 27.6.1.2.2 Arithmetic Extractors Operator >>
-
- 27.6.1.2.3 basic_istream extractor operator >>
-
- Overloading Extractors:
-
- 27.6.1.3 Unformatted input functions
-
- basic_istream::gcount
-
- basic_istream::get
-
- basic_istream::getline
-
- basic_istream::ignore
-
- basic_istream::peek
-
- basic_istream::read
-
- basic_istream::readsome
-
- basic_istream::putback
-
- basic_istream::unget
-
- basic_istream::sync
-
- basic_istream::tellg
-
- basic_istream::seekg
-
- 27.6.1.4 Standard basic_istream manipulators
-
- basic_ifstream::ws
-
- 27.6.1.4.1 basic_iostream Constructor
-
- 27.6.2 Output streams
-
- 27.6.2.1 Template class basic_ostream
-
- 27.6.2.2 basic_ostream Constructor
-
- 27.6.2.3 Class basic_ostream::sentry
-
- Class basic_ostream::sentry Constructor
-
- sentry::Operator bool
-
- 27.6.2.4 Formatted output functions
-
- 27.6.2.4.1 Common requirements
-
- 27.6.2.4.2 Arithmetic Inserter Operator <<
-
- 27.6.2.4.3 basic_ostream::operator<<
-
- Overloading Inserters
-
- 27.6.2.5 Unformatted output functions
-
- basic_ostream::tellp
-
- basic_ostream::seekp
-
- basic_ostream::put
-
- basic_ostream::write
-
- basic_ostream::flush
-
- 27.6.2.6 Standard basic_ostream manipulators
-
- basic_ostream:: endl
-
- basic_ostream::ends
-
- basic_ostream::flush
-
- 27.6.3 Standard manipulators
-
- Standard Manipulator Instantiations
-
- resetiosflags
-
- setiosflags
-
- :setbase
-
- setfill
-
- setprecision
-
- setw
-
- Overloaded Manipulator
18 27.7 String Based Streams
-
- Overview of String Based Stream Classes
-
- Header <sstream>
-
- 27.7.1 Template class basic_stringbuf.
-
- 27.7.1.1 basic_stringbuf constructors
-
- 27.7.1.2 Member functions
-
- basic_stringbuf::str
-
- 27.7.1.3 Overridden virtual functions
-
- basic_stringbuf::underflow
-
- basic_stringbuf::pbackfail
-
- basic_stringbuf::overflow
-
- basic_stringbuf::seekoff
-
- basic_stringbuf::seekpos
-
- 27.7.2 Template class basic_istringstream
-
- 27.7.2.1 basic_istringstream constructors
-
- 27.7.2.2 Member functions
-
- basic_istringstream::rdbuf
-
- basic_istringstream::str
-
- 27.7.2.3 Class basic_ostringstream
-
- 27.7.2.4 basic_ostringstream constructors.
-
- 27.7.2.5 Member functions
-
- basic_ostringstream::rdbuf
-
- basic_ostringstream::str
-
- 27.7.3 Class basic_stringstream
-
- 27.7.3.4 basic_stringstream constructors
-
- 27.7.3.5 Member functions
-
- basic_stringstream::rdbuf
-
- basic_stringstream::str
19 27.8 File Based Streams
-
- Overview of File Based Streams
-
- Header <fstream>
-
- 27.8.1 File streams
-
- 27.8.1.1 Template class basic_filebuf
-
- 27.8.1.2 basic_filebuf Constructors
-
- 27.8.1.3 Member functions
-
- basic_filebuf::is_open
-
- basic_filebuf::open
-
- basic_filebuf::close
-
- 27.8.1.4 Overridden virtual functions
-
- basic_filebuf::showmanyc
-
- basic_filebuf::underflow
-
- basic_filebuf::pbackfail
-
- basic_filebuf::overflow
-
- basic_filebuf::seekoff
-
- basic_filebuf::seekpos
-
- basic_filebuf::setbuf
-
- basic_filebuf::sync
-
- basic_filebuf::imbue
-
- 27.8.1.5 Template class basic_ifstream
-
- 27.8.1.6 basic_ifstream Constructor
-
- 27.8.1.7 Member functions
-
- basic_ifstream::rdbuf
-
- basic_ifstream::is_open
-
- basic_ifstream::open
-
- basic_ifstream::close
-
- 27.8.1.8 Template class basic_ofstream
-
- 27.8.1.9 basic_ofstream constructor
-
- 27.8.1.10 Member functions
-
- basic_ofstream::rdbuf
-
- basic_ofstream::is_open
-
- basic_ofstream::open
-
- basic_ofstream::close
-
- 27.8.1.11 Template class basic_fstream
-
- 27.8.1.12 basic_fstream Constructor
-
- 27.8.1.13 Member Functions
-
- basic_fstream::rdbuf
-
- basic_fstream::is_open
-
- basic_fstream::open
-
- basic_fstream::close
20 C Library files
-
- 27.8.2 C Library files
-
- <cstdio> Macros
-
- <cstdio> Types
-
- <cstdio> Functions
21 Annex D Strstream
-
- Overview of Strstream Classes
-
- Header <strstream>
-
- Strstreambuf Class
-
- Strstreambuf constructors and Destructors
-
- Strstreambuf Public Member Functions
-
- freeze
-
- pcount
-
- str
-
- Protected Virtual Member Functions
-
- setbuf
-
- seekoff
-
- seekpos
-
- underflow
-
- pbackfail
-
- overflow
-
- Istrstream Class
-
- Constructors and Destructor
-
- Constructors
-
- Destructor
-
- Public Member Functions
-
- rdbuf
-
- str
-
- Ostrstream Class
-
- Constructors and Destructor
-
- Constructors
-
- Destructor
-
- Public Member Functions
-
- freeze
-
- pcount
-
- rdbuf
-
- str
-
- Strstream Class
-
- Strstream Types
-
- Constructors and Destructor
-
- Constructors
-
- Destructor
-
- Public Member Functions
-
- freeze
-
- pcount
-
- rdbuf
-
- str
22 Mutex.h
-
- Overview of Mutex Support Library
-
- Header <Mutex.h>
-
- Mutex
-
- Mutex_lock
23 MSL Utiliity
-
- Overview of MSL Utilities
-
- The <msl_utlity> Header
-
- Basic Compile-Time Transformations
-
- Type Query
-
- CV Query
-
- Type Classification
-
- POD classification
-
- Miscellaneous
24 Hash Libraries
-
- Overview of Hash Containers
-
- General Hash Issues
-
- Introduction
-
- Namespace Issues
-
- Fully Qualified Reference:
-
- Namespace Alias
-
- Using Declaration
-
- Using Directive
-
- Compatibility Headers
-
- Constructors
-
- Iterator Issues
-
- Capacity
-
- Insert For Unique Hashed Containers
-
- Insert For Multi Hashed Containers
-
- Incompatibility with Previous versions Metrowerks Hash Containers
-
- Hash_set
-
- Introduction.
-
- Old Hashset Headers
-
- Template Parameters
-
- Nested Types
-
- Iterator Issues
-
- hash_set
-
- Hash_map
-
- Introduction
-
- Old Hashmap Headers
-
- Template Parameters
-
- Nested Types
-
- Iterator Issues
-
- Hash_fun
25 <mslconfig>
-
- Overview of the C++ Switches, Flags and Defines
-
- _CSTD
-
- _Inhibit_Container_Optimization
-
- _Inhibit_Optimize_RB_bit
-
- _MSL_ARRAY_AUTO_PTR
-
- __MSL_CPP__
-
- _MSL_EXTENDED_BINDERS
-
- _MSL_EXTENDED_PRECISION_OUTP
-
- _MSL_FORCE_ENABLE_BOOL_SUPPORT
-
- _MSL_FORCE_ENUMS_ALWAYS_INT
-
- _MSL_IMP_EXP
-
- __MSL_LONGLONG_SUPPORT__
-
- _MSL_NO_BOOL
-
- _MSL_NO_CPP_NAMESPACE
-
- _MSL_NO_EXCEPTIONS
-
- _MSL_NO_EXPLICIT_FUNC_TEMPLATE_ARG
-
- _MSL_NO_IO
-
- _MSL_NO_LOCALE
-
- _MSL_NO_REFCOUNT_STRING
-
- _MSL_USE_AUTO_PTR_96
-
- _MSL_NO_VECTOR_BOOL
-
- _MSL_NO_WCHART
-
- _STD
Index
Visit the Metrowerks website at: http://www.metrowerks.com
For assistance contact Metrowerks Technical Support at: cw_support@metrowerks.com
Copyright © 2000, Metrowerks Corp. All rights reserved.
Last updated: July 21, 2000