C++ 标准库头文件

C++ 标准库的接口由下列头文件的汇集定义。

概念库

(C++20)

基础库概念

协程库

(C++20)

协程支持库

工具库

通用工具:程序控制、动态内存分配、随机数、排序与搜索

信号管理的函数与宏常量

保存(及跳转)到执行环境的宏(与函数)

变长实参列表的处理

运行时类型信息工具

(C++11)

std::type_index

(C++11)

编译时类型信息

std::bitset 类模板

函数对象、函数调用、绑定操作及引用包装

多种工具组件

C 风格日期/时间工具

(C++11)

C++ 时间工具

标准宏与 typedef

(C++11)

std::initializer_list 类模板

(C++11)

std::tuple 类模板

(C++17)

std::any 类

(C++17)

std::optional 类模板

(C++17)

std::variant 类模板

(C++20)

三路比较运算符支持

(C++20)

提供依赖实现的库信息

(C++20)

提供获得源码位置的手段

动态内存管理

低层内存管理工具

高层内存管理工具

(C++11)

嵌套分配器类

(C++17)

多态分配器与内存资源

数值极限

整数类型的极限

浮点类型的极限

(C++11)

定宽整数类型与其他类型的极限

(C++11)

格式化宏、 intmax_t 与 uintmax_t 数学与转换

查询算术类型属性的一致方式

错误处理

异常处理工具

标准异常对象

比较其实参与零的条件编译宏

(C++11)

定义 std::error_code ,依赖平台的错误码

含有最后一次错误号的宏

字符串库

确定窄字符类别的函数

确定宽字符的类别的函数

多种窄字符串处理函数

多种宽与多字节字符串处理函数

(C++11)

C 风格 Unicode 字符转换函数

std::basic_string 类模板

(C++17)

std::basic_string_view 类模板

(C++17)

std::to_chars 与 std::from_chars

(C++20)

格式化库,包括 std::format

容器库

(C++11)

std::array 容器

std::vector 容器

std::deque 容器

std::list 容器

(C++11)

std::forward_list 容器

std::set 与 std::multiset 关联容器

std::map 与 std::multimap 关联容器

(C++11)

std::unordered_set 与 std::unordered_multiset 无序关联容器

(C++11)

std::unordered_map 与 std::unordered_multimap 无序关联容器

std::stack 容器适配器

std::queue 与 std::priority_queue 容器适配器

(C++20)

std::span 视图

迭代器库

范围迭代器

范围库

(C++20)

范围访问、元件、要求、工具及适配器

算法库

在范围上操作的算法

(C++17)

并行版本算法的预定义执行策略

数值库

常用数学函数

复数类型

表示和操纵值的数组的类

(C++11)

随机数生成器与分布

范围中的值上的数值运算

(C++11)

编译时有理数算术

(C++11)

浮点环境访问函数

(C++20)

位操纵函数

(C++20)

数学常数

本地化库

本地化工具

C 本地化工具

(C++11)(C++17 中弃用)

Unicode 转换设施

输入/输出库

输入/输出库中所有类的前置声明

std::ios_base 类、 std::basic_ios 类模板与数个 typedef

std::basic_istream 类模板与数个 typedef

std::basic_ostream 、 std::basic_iostream 类模板与数个 typedef

数个标准流对象

std::basic_fstream 、 std::basic_ifstream 、 std::basic_ofstream 类模板及数个 typedef

std::basic_stringstream 、 std::basic_istringstream 、 std::basic_ostringstream 类模板与数个 typedef

(C++20)

std::basic_osyncstream 、 std::basic_syncbuf 及 typedef

(C++98 中弃用)

std::strstream 、 std::istrstream 、 std::ostrstream

格式化输入与输出的辅助函数

std::basic_streambuf 类模板

C 风格输入输出函数

文件系统库

(C++17)

std::path 类与支持函数

正则表达式库

(C++11)

支持正则表达式处理的类、算法及迭代器

原子操作库

(C++11)

原子操作库

线程支持库

(C++11)

std::thread 类与支持函数

(C++20)

std::jthread 的停止记号

(C++11)

互斥元件

(C++14)

共享互斥元件

(C++11)

异步计算元件

(C++11)

线程等待条件

(C++20)

信号量

(C++20)

(C++20)

屏障

C 兼容头文件

对于一些形式为 xxx.h 的 C 标准库头文件,C++ 标准库同时包含同名的头文件和拥有形式 cxxx 的头文件(所有有意义的 cxxx 头文件列于上方)。

除了 complex.h 这一例外,C++ 标准库中包含的每个 xxx.h 头文件都将其对应的 cxxx 中本应置于 std 命名空间中的每个名字放在全局命名空间中。

允许这些头文件也在 std 命名空间中声明同样的名字,而且允许对应的 cxxx 头文件也在全局命名空间中声明同样的名字:包含  肯定会提供 std::malloc,亦可提供 ::malloc。包含  肯定会提供 ::malloc,亦可提供 std::malloc。这甚至适用于并非 C 标准库一部分的函数和函数重载。

(弃用)

表现同 

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现同 

(C++11)(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现同 

(C++11)(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现同 

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间,

除了数学特殊函数的名字

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间,

除了 std::byte 与相关函数的名字

(C++11)(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(C++11)(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

(弃用)

表现如同将每个来自  的名字置于全局命名空间

空 C 头文件

头文件  及  不含有任何来自 C 标准库的内容,而且不过是包含其他来自 C++ 标准库的头文件。C++ 中这些头文件的使用均已被弃用。

(C++11)(C++17 中弃用)(C++20 中移除)

简单地包含头文件 

(C++11)(弃用)

简单地包含头文件 

(C++11)(C++17 中弃用)(C++20 中移除)

简单地包含头文件  与  :等价于 C 头文件 tgmath.h 的重载已于前述头文件提供

(C++11)(弃用)

简单地包含头文件  与 

无意义的 C 头文件

头文件  及  在 C++ 中无意义,因为它们在 C 中提供的宏是 C++ 的关键词。

(C++20 中移除)

空头文件。 C 中 iso646.h 中出现的宏是 C++ 中的关键词

(弃用)

无效果

(C++11)(C++17 中弃用)(C++20 中移除)

定义一个兼容性宏常量

(C++11)(弃用)

定义一个兼容性宏常量

(C++11)(C++17 中弃用)(C++20 中移除)

定义一个兼容性宏常量

(C++11)(弃用)

定义一个兼容性宏常量

不受支持的 C 头文件

C++ 不包含 C 头文件  及  而且它们无 cxxx 等价版本。

实验性库

C++ TR/TS 亦定义数个头文件的汇集。

你可能感兴趣的:(C++ 标准库头文件)