JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.2:C++ 用户指南
search filter icon
search icon

文档信息

前言

第 1 部分C++ 编译器

1.  C++ 编译器

2.  使用 C++ 编译器

3.  使用 C++ 编译器选项

第 2 部分编写 C++ 程序

4.  语言扩展

5.  程序组织

6.  创建和使用模板

7.  编译模板

8.  异常处理

9.  改善程序性能

10.  生成多线程程序

第 3 部分库

11.  使用库

12.  使用 C++ 标准库

12.1 C++ 标准库头文件

12.2 C++ 标准库手册页

12.3 STLport

12.3.1 重新分发和支持的 STLport 库

12.4 Apache stdcxx 标准库

13.  使用传统 iostream

14.  使用复数运算库

15.  生成库

第 4 部分附录

A.  C++ 编译器选项

B.  Pragma

词汇表

索引

12.2 C++ 标准库手册页

表 12-2 列出了标准库中每个组件的可用文档。

表 12-2 C++ 标准库手册页

手册页
概述
Algorithms
在容器和序列上执行各种操作的通用算法
Associative_Containers
排序的容器
Bidirectional_Iterators
可以读取和写入,并且可以双向遍历容器的迭代器
Containers
标准模板库 (standard template library, STL) 集合
Forward_Iterators
可以读取和写入的前移式迭代器
Function_Objects
定义了 operator() 的对象
Heap_Operations
请参见与 make_heappop_heappush_heapsort_heap 对应的条目
Input_Iterators
只读的前移式迭代器
Insert_Iterators
允许迭代器向容器插入元素而非覆盖容器内元素的迭代器适配器
Iterators
集合遍历和修改的指针泛化
Negators
用于遍历谓词函数对象检测的函数适配器和函数对象
Operators
C++ 标准模板库输出的运算符
Output_Iterators
只写的前移式迭代器
Predicates
返回布尔 (true/false) 值或整型值的函数或函数对象
Random_Access_Iterators
可以读取、写入并随机访问容器的迭代器
Sequences
组织序列集合的容器
Stream_Iterators
包括允许直接在流上使用通用算法的 ostream 和 istream 的迭代器功能
__distance_type
确定迭代程序所用距离的类型(已过时)
__iterator_category
确定迭代程序所属的类别(已过时)
__reverse_bi_iterator
向后遍历集合的迭代器
accumulate
将一定范围内的所有元素聚集到单个值中
adjacent_difference
输出在一定范围内每个相邻元素对之间的差别的序列
adjacent_find
寻找在序列中相等的第一个相邻元素对
advance
按特定的距离将迭代器向前或者向后移动(如可能)
allocator
在标准库容器中用于存储管理的缺省分配器对象
auto_ptr
一个简单、智能的指针类
back_insert_iterator
用于在集合末端插入项目的插入迭代器
back_inserter
用于在集合末端插入项目的插入迭代器
basic_filebuf
将输入序列或输出序列与文件关联的类
basic_fstream
支持对命名文件的读取和写入,或者与文件描述符关联的设备的读取和写入
basic_ifstream
支持从命名文件读取或者从其他与文件描述符关联的设备读取
basic_ios
一个包含所有流都需要的通用函数的基类
basic_iostream
帮助格式化或者翻译由流缓冲区控制的字符序列
basic_istream
帮助读取或者翻译由流缓冲区控制的序列输入
basic_istringstream
支持从内存中的数组读取 basic_string<charT,traits,Allocator> 类的对象
basic_ofstream
支持写入命名文件或者其他与文件描述符关联的设备
basic_ostream
帮助格式化或者写入由流缓冲区控制的序列输出
basic_ostringstream
支持写入 basic_string<charT,traits,Allocator> 类的对象
basic_streambuf
用于派生便于字符序列控制的各种流缓冲区的抽象基类
basic_string
处理类似字符实体的模板化类
basic_stringbuf
将输入或者输出序列与任意字符序列关联
basic_stringstream
支持在内存中的数组中写入和读取 basic_string<charT,traits,Allocator> 类的对象
binary_function
创建二元函数对象的基类
binary_negate
返回二元谓词结果补码的函数对象
binary_search
对容器中的值执行二元搜索
bind1st
用于将值绑定到函数对象的模板化实用程序
bind2nd
用于将值绑定到函数对象的模板化实用程序
binder1st
用于将值绑定到函数对象的模板化实用程序
binder2nd
用于将值绑定到函数对象的模板化实用程序
bitset
用于存储和处理固定大小位序列的模板类和相关函数
cerr
控制向与 <cstdio> 中声明的对象 stderr 关联的无缓冲流缓冲区的输出
char_traits
具有用于 basic_string 容器和 iostream 类的类型和运算的特性类
cin
控制从与 <cstdio> 中声明的对象 stdin 关联的流缓冲区的输入
clog
控制向与 <cstdio> 中声明的对象 stderr 关联的流缓冲区的输出
codecvt
代码转换侧面
codecvt_byname
一个包含以命名语言环境为基础的代码集转换分类工具的侧面
collate
一个字符串检验、比较和散列侧面
collate_byname
一个字符串检验、比较和散列侧面
compare
返回真或假的二元函数或函数对象
complex
C++ 复数库
copy
复制一定范围内的元素
copy_backward
复制一定范围内的元素
count
计算容器中满足给定条件的元素的数量
count_if
计算容器中满足给定条件的元素的数量
cout
控制向与 <cstdio> 中声明的对象 stdout 关联的流缓冲区的输出
ctype
包括字符分类工具的侧面
ctype_byname
一个包含以命名语言环境为基础的字符分类工具的侧面
deque
一个支持随机访问迭代器并支持在开始和结束位置进行高效插入/删除的序列
distance
计算两个迭代器之间的距离
divides
返回用第一个参数除以第二个参数所得到的结果
equal
比较等式的两个范围
equal_range
在集合中找到最大的子范围,可在该范围中插入一个给定值而无需违反集合排序
equal_to
如果第一个参数与第二个参数相等就返回真的二元函数对象
exception
一个支持逻辑和运行时错误的类
facets
用于封装语言环境功能分类的类系列
filebuf
将输入序列或输出序列与文件关联的类
fill
用给定值初始化一个范围
fill_n
用给定值初始化一个范围
find
在序列中寻找出现的值
find_end
在序列中寻找上次出现的子序列
find_first_of
在序列中寻找在另一个序列中第一次出现的值
find_if
在满足特定谓词的序列中寻找第一次出现的值
for_each
将函数应用于范围内的每个元素
fpos
保持 iostream 类的位置信息
front_insert_iterator
用于在集合起始端插入条目的插入迭代器
front_inserter
用于在集合起始端插入条目的插入迭代器
fstream
支持对命名文件的读取和写入,或者与文件描述符关联的设备的读取和写入
generate
初始化一个具有由值产生器类产生的值的容器
generate_n
初始化一个具有由值产生器类产生的值的容器
get_temporary_buffer
基于指针的基元,用于处理内存
greater
如果第一个参数比第二个参数大就返回真的二元函数对象
greater_equal
如果第一个参数大于或等于第二个参数就返回真的二元函数对象
gslice
用于表示数组的通用片的数字数组类
gslice_array
用于表示 valarray 的类 BLAS 片的数字数组类
has_facet
用于确定语言环境是否具有给定侧面的函数模板
ifstream
支持从命名文件读取或者从其他与文件描述符关联的设备读取
includes
已排序序列的一系列基本操作
indirect_array
用于表示从 valarray 中所选元素的数字数组类
inner_product
计算两个范围 A 和 B 的内积 A X B
inplace_merge
将两个已排序的序列合并成为一个
insert_iterator
用于将项目插入集合而非覆盖集合的插入迭代器
inserter
用于将项目插入集合而非覆盖集合的插入迭代器
ios
一个包含所有流都需要的通用函数的基类
ios_base
定义成员类型并维护从它继承的类的数据
iosfwd
声明输入/输出库模板类并使之专用于宽字符和微型字符
isalnum
确定字符是字母还是数字
isalpha
确定字符是否为字母
iscntrl
确定字符是否为控制字符
isdigit
确定字符是否为十进制数字
isgraph
确定字符是否为图形字符
islower
确定字符是否为小写形式
isprint
确定字符是否可输出
ispunct
确定字符是否为标点符号
isspace
确定字符是否为空格
istream
帮助读取或者翻译由流缓冲区控制的序列输入
istream_iterator
具有 istreams 迭代器功能的流迭代器
istreambuf_iterator
从流缓冲区读取为其构造的连续字符
istringstream
支持从内存中的数组读取 basic_string<charT,traits,Alocator> 类的对象
istrstream
从内存中的数组读取字符
isupper
确定字符是否为大写形式
isxdigit
确定字符是否为十六进制数字
iter_swap
交换两个位置的值
iterator
基本的迭代器类
iterator_traits
返回有关迭代器的基本信息
less
如果第一个参数比第二个参数小就返回真的二元函数对象
less_equal
如果第一个参数小于或等于第二个参数就返回真的二元函数对象
lexicographical_compare
按照字典编排顺序来比较两个范围
limits
请参阅 numeric_limits
list
支持双向迭代器的序列
locale
包含多态侧面集的本地化类
logical_and
如果两个参数都为真就返回真的二元函数对象
logical_not
如果参数是假就返回真的一元函数对象
logical_or
如果两个参数有一个为真就返回真的二元函数
lower_bound
确定在已排序容器中元素的第一个有效位置
make_heap
创建堆
map
用唯一关键字访问非关键字值的关联容器
mask_array
给出了 valarray 的屏蔽视图的数字数组类
max
查找并返回一对值中的最大值
max_element
查找一个范围中的最大值
mem_fun
与指向成员函数的指针相匹配的函数对象,替代全局函数
mem_fun1
与指向成员函数的指针相匹配的函数对象,替代全局函数
mem_fun_ref
与指向成员函数的指针相匹配的函数对象,替代全局函数
mem_fun_ref1
与指向成员函数的指针相匹配的函数对象,替代全局函数
merge
将两个已排序的序列合并为第三个序列
messages
消息传送侧面
messages_byname
消息传送侧面
min
查找并返回一对值中的最小值
min_element
查找一个范围中的最小值
minus
返回用第一个参数减去第二个参数所得到的结果
mismatch
比较来自两个序列的元素并返回前两个不匹配的元素
modulus
返回第一个参数除以第二个参数所得到的余数
money_get
输入的货币格式
money_put
输出的货币格式
moneypunct
货币标点格式
moneypunct_byname
货币标点格式
multimap
用关键字访问非关键字值的关联容器
multiplies
用于返回第一个参数与第二个参数相乘结果的二元函数对象。
multiset
允许快速访问已保存关键字值的关联容器
negate
返回其参数负值的一元函数对象
next_permutation
生成以排序函数为基础的序列的连续置换
not1
对一元谓词函数对象进行求反操作的函数适配器
not2
对一元谓词函数对象进行求反操作的函数适配器
not_equal_to
如果第一个参数与第二个参数不相等就返回 true 的二元函数对象
nth_element
重新排列集合,以使按照排序顺序,低于第 n 个元素的所有元素位于该元素之前,高于第 n 个元素的所有元素位于该元素之后
num_get
输入的数字格式
num_put
输出的数字格式
numeric_limits
表示标量类型信息的类
numpunct
数字标点格式
numpunct_byname
数字标点格式
ofstream
支持写入命名文件或者其他与文件描述符关联的设备
ostream
帮助格式化或者写入由流缓冲区控制的序列输出
ostream_iterator
流迭代器允许使用具有 ostream 和 istream 的迭代器
ostreambuf_iterator
向从其构造的流缓冲区对象写入连续的字符
ostringstream
支持写入 basic_string<charT,traits,Allocator> 类的对象
ostrstream
写入一个在内存中的数组
pair
异类值对的模板
partial_sort
对实体集合排序的模板化算法
partial_sort_copy
对实体集合排序的模板化算法
partial_sum
计算一组值的连续部分的和
partition
将所有满足给定谓词的实体放置在不满足给定谓词的实体后面
permutation
生成以排序函数为基础的序列的连续置换
plus
用于返回第一个参数与第二个参数相加结果的二元函数对象
pointer_to_binary_function
采用指向二元函数的指针的函数对象,替代 binary_function
pointer_to_unary_function
采用指向函数的指针的函数对象类,替代 unary_function
pop_heap
从堆中移出最大的元素
prev_permutation
生成以排序函数为基础的序列的连续置换
priority_queue
像优先队列一样运行的容器适配器
ptr_fun
一个与指向某函数的指针对应的过载函数,替换一个函数
push_heap
将一个新元素放入堆
queue
像队列一样运行的容器适配器(先入先出)
random_shuffle
集合的随机混洗元素
raw_storage_iterator
使基于迭代器的算法能够将结果存入尚未初始化的内存中
remove
将所需元素移动到容器的前端,并返回一个说明所需元素序列的结束位置的迭代器
remove_copy
将所需元素移动到容器的前端,并返回一个说明所需元素序列的结束位置的迭代器
remove_copy_if
将所需元素移动到容器的前端,并返回一个说明所需元素序列的结束位置的迭代器
remove_if
将所需元素移动到容器的前端,并返回一个说明所需元素序列的结束位置的迭代器
replace
用新值替换集合中的元素
replace_copy
用新值替换集合中的元素,并将修改过的序列移入结果
replace_copy_if
用新值替换集合中的元素,并将修改过的序列移入结果
replace_if
用新值替换集合中的元素
return_temporary_buffer
基于指针的基元,用于处理内存
reverse
反转集合中元素的顺序
reverse_copy
将集合中元素复制到新集合时反转它们的顺序
reverse_iterator
向后遍历集合的迭代器
rotate
将包含第一个元素到第中间减 1 个元素的部分与包含从中间到最后元素的部分交换
rotate_copy
将包含第一个元素到第中间减 1 个元素的部分与包含从中间到最后元素的部分交换
search
在值(这些值在元素状态时与标明范围内的值相等)的序列中查找子序列
search_n
在值(这些值在元素状态时与标明范围内的值相等)的序列中查找子序列
set
支持唯一关键字的关联容器
set_difference
构建已排序差集的基本设置操作
set_intersection
构建已排序交集的基本设置操作
set_symmetric_difference
构建已排序对称差集的基本设置操作
set_union
构建已排序并集的基本设置操作
slice
表示数组的类 BLAS 片的数字数组类
slice_array
用于表示 valarray 的类 BLAS 片的数字数组类
smanip
用于实现参数化操纵符的帮助程序类
smanip_fill
用于实现参数化操纵符的帮助程序类
sort
对实体集合排序的模板化算法
sort_heap
将堆转换为已排序的集合
stable_partition
在保持每组中元素的相对顺序的同时,将所有满足给定谓词的实体放在所有不满足给定谓词的实体之前
stable_sort
对实体集合排序的模板化算法
stack(块)
像堆栈一样运行的容器适配器(后入先出)
streambuf
用于派生便于字符序列控制的各种流缓冲区的抽象基类
string
basic_string<char, char_traits<char>, allocator<char>> 的 typedef
stringbuf
将输入或者输出序列与任意字符序列关联
stringstream
支持在内存中的数组中写入和读取 basic_string<charT,traits,Alocator> 类的对象
strstream
在内存中读取或者写入一个数组
strstreambuf
将输入序列或者输出序列与微型字符数组(其元素存储任意值)关联
swap
交换值
swap_ranges
将一个位置的值与在其他位置的值交换
time_get
输入的时间格式
time_get_byname
输入的时间格式,以命名语言环境为基础
time_put
输出的时间格式
time_put_byname
输出的时间格式,以命名语言环境为基础
tolower
将字符转换为小写形式
toupper
将字符转换为大写形式
transform
将操作应用到集合中的一系列值并且存储结果
unary_function
创建一元函数对象的基类
unary_negate
返回一元谓词结果补码的函数对象
uninitialized_copy
使用构造从一个范围向另一个位置复制值的算法
uninitialized_fill
使用了在集合中设置值的构造算法的算法
uninitialized_fill_n
使用了在集合中设置值的构造算法的算法
unique
从一个值范围移除连续的重复值并将得到的唯一值放入结果
unique_copy
从一个值范围移除连续的重复值并将得到的唯一值放入结果
upper_bound
确定已排序容器中值的最后一个有效位置
use_facet
用于获取侧面的模板函数
valarray
用于数字操作的优化数组类
vector
支持随机访问迭代器的序列
wcerr
控制向与 <cstdio> 中声明的对象 stderr 关联的无缓冲流缓冲区的输出
wcin
控制从与 <cstdio> 中声明的对象 stdin 关联的流缓冲区的输入
wclog
控制向与 <cstdio> 中声明的对象 stderr 关联的流缓冲区的输出
wcout
控制向与 <cstdio> 中声明的对象 stdout 关联的流缓冲区的输出
wfilebuf
将输入序列或输出序列与文件关联的类
wfstream
支持对命名文件的读取和写入,或者与文件描述符关联的设备的读取和写入
wifstream
支持从命名文件读取或者从其他与文件描述符关联的设备读取
wios
一个包含所有流都需要的通用函数的基类
wistream
帮助读取或者翻译由流缓冲区控制的序列输入
wistringstream
支持从内存中的数组读取 basic_string<charT,traits,Allocator> 类的对象
wofstream
支持写入命名文件或者其他与文件描述符关联的设备
wostream
帮助格式化或者写入由流缓冲区控制的序列输出
wostringstream
支持写入 basic_string<charT,traits,Allocator> 类的对象
wstreambuf
用于派生便于字符序列控制的各种流缓冲区的抽象基类
wstring
basic_string<wchar_t, char_traits<wchar_t>, allocator<wchar_t>> 的 typedef
wstringbuf
将输入或者输出序列与任意字符序列关联