標準庫簡介
The standard C++ library is a collection of functions, constants, classes, objects and templates that extends the C++ language providing basic functionality to perform several tasks, like classes to interact with the operating system, data containers, manipulators to operate with them and algorithms commonly needed.
The declarations of the different elements provided by the library are split in several headers that shall be included in the code in order to have access to its components:
algorithm | complex | exception | list | stack |
bitset | csetjmp | fstream | locale | stdexcept |
cassert | csignal | functional | map | strstream |
cctype | cstdarg | iomanip | memory | streambuf |
cerrno | cstddef | ios | new | string |
cfloat | cstdio | iosfwd | numeric | typeinfo |
ciso646 | cstdlib | iostream | ostream | utility |
climits | cstring | istream | queue | valarray |
clocale | ctime | iterator | set | vector |
cmath | deque | limits | sstream |
It can be divided into:
庫
The elements of the C language library are also included as a subset of the C++ Standard library. These cover many aspects, from general utility functions and macros to input/output functions and dynamic memory management functions:
cassert | C Diagnostics Library (header) |
cctype | Character handling functions (header) |
cerrno | C Errors (header) |
cfloat | Characteristics of floating-point types (header) |
ciso646 | ISO 646 Alternative operator spellings (header) |
climits | Sizes of integral types (header) |
clocale | C localization library (header) |
cmath | C numerics library (header) |
csetjmp | Non local jumps (header) |
csignal | C library to handle signals (header) |
cstdarg | Variable arguments handling (header) |
cstddef | C Standard definitions (header) |
cstdio | C library to perform Input/Output operations (header) |
cstdlib | C Standard General Utilities Library (header) |
cstring | C Strings (header) |
ctime | C Time Library (header) |
標準程式庫
雜項庫
Language support library
limits | Numeric limits (header) |
new | Dynamic memory (header) |
typeinfo | Type information (header) |
exception | Standard exception class (class) |
Diagnostics library
stdexcept | Exception classes (header) |
General utilities library
utility | Utility components (header) |
functional | Function objects (header) |
memory | Memory elements (header) |
Strings library
string | C++ Strings library (library) |
Localization library
locale | Localization library (header) |
標準模板庫
Containers library
vector | Vector (class template) |
list | List (class template) |
deque | Double ended queue (class template) |
queue | FIFO queue (class template) |
priority_queue | Priority queue (class template) |
stack | LIFO stack (class template) |
map | Map (class template) |
multimap | Multiple-key map (class template) |
set | Set (class template) |
multiset | Multiple-key set (class template) |
bitset | Bitset (class template) |
Iterators library
iterator | Iterator definitions (header) |
Algorithms library
algorithm | Standard Template Library: Algorithms (library) |
Numeric library
complex | Complex numbers library (header) |
valarray | Library for arrays of numeric values (header) |
numeric | Generalized numeric operations (header) |
輸入輸出流庫
Provides functionality to use an abstraction called streams specially designed to perform input and output operations on sequences of character, like files or strings.
This functionality is provided through several related classes, as shown in the following relationship map, with the corresponding header file names on top:
For more info see the reference page for the C++ Input/Output Library.