实用工具库
来自cppreference.com
< cpp
C++ 包含了各种实用工具库,提供了诸如位计数和函数部分应用的功能。这些库大致可以分为两类:
- 语言支持库
- 通用库
目录 |
[编辑] 语言支持
语言支持库中所提供的类和函数与语言特性紧密相关,用以支持语言中的一些常见的惯用法。
[编辑] 类型支持
基本类型(如 std::size_t、std::nullptr_t 等)、RTTI(如 std::type_info 等)、类型特性(如 std::is_integral、std::rank 等)。
[编辑] 动态内存管理
智能指针(如 std::shared_ptr 等)、分配器(如 std::allocator 等)、C 风格的内存管理(如 std::malloc 等)。
[编辑] 错误处理
异常(如 std::exception、std::logic_error 等)、断言(如 assert 等)。
[编辑] 初始化列表
(C++11) |
(类模板) |
[编辑] 可变参数函数
使得函数能够接受任意数量的参数(如通过 va_start、va_arg、va_end 等)。
[编辑] 通用工具
[编辑] 程序实用工具
终止(如 std::abort、std::atexit 等)、环境(如 std::system 等)、信号(如 std::raise 等)。
[编辑] 日期和时间
时间跟踪(如 std::chrono::time_point、std::chrono::duration 等),C 风格日期和时间(如 std::time、std::clock 等)。
[编辑] 位集合
实现固定长度的位阵列 原文: implements constant length bit array (类) |
[编辑] 函数对象
函数的部分应用(如 std::bind 等)、泛函数(如 std::function 等)、预置函数对象(如 std::plus、std::equal_to 等)。
[编辑] 对和元组
实现二进制元组,即一对值 原文: implements binary tuple, i.e. a pair of values (类模板) | |
(C++11) |
实现固定大小的容器,该容器保持可能的不同类型的元素 原文: implements fixed size container, which holds elements of possibly different types (类模板) |
(C++11) |
使用的标签类型选择正确的重载函数,分段建设 原文: tag type used to select correct function overload for piecewise construction (类) |
(C++11) |
piecewise_construct_t 类型的对象使用,以消除歧义分段施工的功能 原文: an object of type piecewise_construct_t used to disambiguate functions for piecewise construction (常量) |
[编辑] 交换、传递及移动
交换两个对象的值 (函数模板) | |
(C++11) |
转发函数的参数 (函数模板) |
(C++11) |
获得一个右值引用 (函数模板) |
(C++11) |
获得一个右值引用的举动构造方法不抛出 原文: obtains an rvalue reference if the move constructor does not throw (函数模板) |
(C++11) |
在未经评估的情况下获得了表达式的类型 原文: obtains the type of expression in unevaluated context (函数模板) |
[编辑] 关系运算符
定义于
std::rel_ops 名字空间 | |
automatically generates comparison operators based on user-defined operator== and operator< (函数模板) |
[编辑] 哈希支持
(C++11) |
hash function object (类模板) |