Boost 库文档
排序方式
- 累加器: 增量计算框架和统计累加器集合。
- 算法: 一系列有用的通用算法。
- 对齐: 内存对齐函数、分配器、特性。
- 任意类型: 用于不同值类型的单个值的安全的通用容器。
- 数组: 符合 STL 的常量大小数组容器包装器。
- Asio: 可移植的网络和其他低级 I/O,包括套接字、计时器、主机名解析、套接字 iostreams、串行端口、文件描述符和 Windows HANDLE。
- 断言: 可自定义的断言宏。
- 赋值: 使用常量或生成的数据填充容器从未如此简单。
- 原子操作: C++11 风格的原子类型。
- Beast: 使用仅 C++11 和 Boost.Asio 的可移植 HTTP、WebSocket 和网络操作。
- 双向映射: 用于 C++ 的双向映射库。使用 Boost.Bimap,您可以创建两种类型都可以用作键的关联容器。
- 绑定: boost::bind 是标准函数 std::bind1st 和 std::bind2nd 的泛化。它支持任意函数对象、函数、函数指针和成员函数指针,并且能够将任何参数绑定到特定值或将输入参数路由到任意位置。
- 调用特性: 定义传递参数的类型。
- 可调用特性: 作为 Boost.FunctionTypes 的精神继任者,Boost.CallableTraits 是一个仅限头文件的 C++11 库,用于编译时检查和操作所有“可调用”类型。对 C++17 特性的额外支持。
- 字符转换: C++11 中 <charconv> 的实现。
- 时间: 有用的时间实用程序。C++11。
- 循环缓冲区: 一个符合 STL 的容器,也称为环形或循环缓冲区。
- Cobalt: 协程。基本算法和类型
- 兼容性: 较新 C++ 标准中添加的标准组件的 C++11 实现。
- 兼容性: 针对不符合标准的标准库的帮助。
- 压缩对: 具有空成员优化的对类。
- 计算: 并行/GPU 计算库
- 概念检查: 通用编程工具。
- 配置: 帮助 Boost 库开发人员适应编译器特性;不适用于库用户。
- 容器: 标准库容器和扩展。
- 容器哈希: 一个与 STL 兼容的哈希函数对象,可以扩展以哈希用户定义的类型。
- 容器哈希: 一个与 STL 兼容的哈希函数对象,可以扩展以哈希用户定义的类型。
- 上下文: (C++11) 上下文切换库。
- 契约: 用于 C++ 的契约编程。所有契约编程功能都受支持:子契约、类不变式、后置条件(带旧值和返回值)、前置条件、断言失败时的可自定义操作(例如,终止或抛出)、断言的可选编译和检查等。
- 转换: 多态转换。
- 转换: 一个可扩展且可配置的类型转换框架。
- 核心: 一系列依赖项最少的简单核心实用程序。
- 协程 (已弃用): 协程库。
- 协程2: (C++11) 协程库。
- CRC: Boost CRC 库提供了两种 CRC(循环冗余校验)计算对象的实现和两种 CRC 计算函数的实现。这些实现是基于模板的。
- 日期时间: 一组基于通用编程概念的日期时间库。
- 描述: 一个 C++14 反射库。
- DLL: 用于舒适地使用 DLL 和 DSO 的库。
- 动态位集: dynamic_bitset 类表示一组位。它通过 operator[] 提供对单个位值的访问,并提供可以应用于内置整数的所有按位运算符,例如 operator& 和 operator<<。集合中的位数在运行时通过 dynamic_bitset 构造函数的参数指定。
- 启用如果: 函数模板重载的选择性包含。
- 字节序: 用于正确字节顺序等的类型和转换函数,而不管处理器字节序如何。
- 异常: Boost 异常库支持在异常对象中传输任意数据,以及在线程之间传输异常。
- 纤程: (C++11) 用户空间线程库。
- 文件系统: Boost 文件系统库提供可移植的功能来查询和操作路径、文件和目录。
- 享元: 用于管理大量高度冗余对象的模式。
- 遍历: 在 C++ 中,编写循环以遍历序列非常繁琐。我们可以使用迭代器,这需要大量的样板代码,或者我们可以使用 std::for_each() 算法并将我们的循环主体移动到谓词中,这需要同样多的样板代码,并迫使我们将我们的逻辑从它将被使用的地方移开。相比之下,其他一些语言,如 Perl,提供了专门的“foreach”结构来自动执行此过程。BOOST_FOREACH 正是 C++ 中的这种结构。它为我们迭代序列,使我们无需直接处理迭代器或编写谓词。
- 格式化: 格式库提供了一种类型安全机制,用于根据类似 printf 的格式字符串格式化参数。
- 函数: 用于延迟调用或回调的函数对象包装器。
- 函数类型: Boost.FunctionTypes 提供了对函数、函数指针、函数引用和指向成员的类型的分类、分解和合成功能。
- 函数式: Boost.Function 库包含一系列函数对象包装器类模板。
- 函数式/工厂: 用于动态和静态对象创建的函数对象模板
- 函数式/转发: 适配器允许通用函数对象接受任意参数
- 函数式/重载函数: 将不同的函数重载到单个函数对象中。
- 融合: 用于处理元组的库,包括各种容器、算法等。
- 几何: Boost.Geometry 库提供几何算法、基元和空间索引。
- GIL: (C++14) 通用图像库
- 图: BGL 图接口和图组件是通用的,与标准模板库 (STL) 的意义相同。
- 并行图: PBGL 图接口和图组件是通用的,与标准模板库 (STL) 的意义相同。
- Hana: 一个现代的 C++ 元编程库。它提供高级算法来操作异构序列,允许使用自然语法编写类型级计算,提供工具来内省用户定义的类型等等。
- 堆: 优先级队列数据结构。
- 直方图: 具有 C++14 方便接口的快速多维直方图
- HOF: 用于 C++ 的高阶函数
- ICL: 区间容器库,区间集和映射以及关联值的聚合
- 标识类型: 将类型包装在圆括号内,以便它们始终可以作为宏参数传递。
- 就地工厂,类型化就地工厂: 使用可变参数列表对包含的对象进行通用就地构造。
- 整数: boost 整数头文件和类的组织旨在利用 1999 年 C 标准中的 <stdint.h> 类型,而不诉诸于 1998 年 C++ 标准方面的未定义行为。头文件 <boost/cstdint.hpp> 使标准整数类型在命名空间 boost 中安全可用,而不会将任何名称放在命名空间 std 中。
- 进程间通信: 共享内存、内存映射文件、进程共享互斥体、条件变量、容器和分配器。
- 区间: 将通常的算术函数扩展到数学区间。
- 侵入式: 侵入式容器和算法。
- I/O: 标准 I/O 库的实用程序。
- Iostreams: Boost.IOStreams 提供了一个用于定义流、流缓冲区和 I/O 过滤器的框架。
- 迭代器: Boost 迭代器库包含两个部分。第一个是扩展 C++ 标准迭代器要求的概念系统。第二个是基于这些扩展的概念构建迭代器的组件框架,并包含几个有用的迭代器适配器。
- JSON: C++11 中的 JSON 解析、序列化和 DOM。
- Lambda: 在实际调用站点定义小的未命名函数对象,以及更多。
- Lambda2: 一个 C++14 lambda 库。
- LEAF: 用于 C++11 的轻量级错误处理库。
- 词法转换: 通用文本转换,例如以字符串表示的整数,反之亦然。
- 局部函数: 在其他函数中,直接在需要它们的范围内对程序函数进行本地编程。
- 区域设置: 为 C++ 提供本地化和 Unicode 处理工具。
- 无锁: 无锁数据结构。
- 日志: 日志库。
- 数学: Boost.Math 包括数学领域中的几个贡献:浮点实用程序、特定宽度的浮点类型、数学常数、统计分布、特殊函数、求根和函数最小化、多项式和有理函数、插值以及数值积分和微分。其中许多功能都是模板化的,以支持内置类型和扩展宽度类型(例如 Boost.Multiprecision)。
- 数学公因子: 最大公约数和最小公倍数。
- 数学 八元数: 八元数。
- 数学 四元数: 四元数。
- 数学/特殊函数: 大量的数学特殊函数。
- 数学/统计分布: 大量的单变量统计分布及其相关函数。
- 成员函数: 用于函数/对象/指针和成员函数的通用绑定器。
- 元状态机: 一个用于表达性 UML2 有限状态机的超高性能库。
- 元解析: 一个用于生成编译时解析器的库,该解析器在 C++ 编译过程中解析嵌入的 DSL 代码。
- 最小-最大值: 标准库扩展,用于同时进行最小/最大值和最小/最大值元素计算。
- 移动: 适用于 C++03 和 C++11 编译器的可移植移动语义。
- Mp11: 一个 C++11 元编程库。
- MPI: 消息传递接口库,用于分布式内存并行应用程序编程。
- MPL: Boost.MPL 库是一个通用的、高级的 C++ 模板元编程框架,包含编译时算法、序列和元函数。它提供了一个概念基础和一套广泛的强大且一致的工具,使在 C++ 中进行显式元编程尽可能简单和愉快。
- 多维数组: Boost.MultiArray 提供了一个通用的 N 维数组概念定义和该接口的常用实现。
- 多索引: Boost 多索引容器库提供了一个名为 multi_index_container 的类模板,它能够构建容器,维护一个或多个具有不同排序和访问语义的索引。
- 多精度: 用于浮点数、整数和有理数运算的扩展精度算术类型。
- MySQL: 基于 Boost.Asio 构建的 MySQL 客户端库。
- Nowide: 在 Windows 上具有 UTF-8 API 的标准库函数。
- 数值转换: 优化的基于策略的数值转换。
- Odeint: 求解常微分方程。
- 运算符: 简化算术类和迭代器中运算符定义的模板。
- 可选: 一个值语义的、类型安全的包装器,用于表示给定类型的“可选”(或“可空”)对象。可选对象可能包含也可能不包含底层类型的值。
- 结果: 一个确定性故障处理库,部分模拟轻量级异常。
- 参数: Boost.Parameter 库 - 编写接受按名称传递参数的函数。
- 参数 Python 绑定: Boost.Parameter 库 Python 绑定。
- PFR: 用户定义类型的基本反射。
- 凤凰: 在实际调用点定义小的未命名函数对象,等等。
- 指针容器: 用于存储堆分配的多态对象的容器,以简化面向对象编程。
- 多态集合: 多态对象的快速容器。
- 多边形: Voronoi 图构造以及布尔运算/裁剪、调整大小/偏移等,用于具有整数坐标的平面多边形。
- 内存池: 内存池管理。
- 预定义: 此库根据它可以从 C、C++、Objective C 和 Objective C++ 预定义宏或那些在通用可用头文件中定义的信息收集到的信息,定义了一组编译器、体系结构、操作系统、库和其他版本号。
- 预处理器: 预处理器元编程工具,包括重复和递归。
- 进程: 以可移植方式创建进程的库。
- 程序选项: program_options 库允许程序开发人员通过常规方法(如命令行和配置文件)从用户处获取程序选项,即(名称,值)对。
- 属性映射: 定义将键对象映射到值对象的接口的概念。
- 属性映射(并行): 属性映射的并行扩展,用于与并行图一起使用。
- 属性树: 一种特别适合存储配置数据的树形数据结构。
- Proto: 用于特定领域嵌入式语言的表达式模板库和编译器构造工具包。
- Python: Boost Python 库是一个用于连接 Python 和 C++ 的框架。它允许您使用任何特殊工具(只需使用您的 C++ 编译器)快速轻松地将 C++ 类、函数和对象公开给 Python,反之亦然。
- QVM: 用于处理四元数、向量和矩阵的通用 C++ 库。
- 随机数: 一个完整的随机数生成系统。
- 范围: 一个基于新迭代器概念构建的通用算法的新基础结构。
- 比率: 编译时有理数运算。C++11。
- 有理数: 一个有理数类。
- Redis: 基于 Boost.Asio 构建的 Redis 异步客户端库。
- 引用: 一个用于将引用传递给通用函数的实用程序库。
- 正则表达式: 正则表达式库。
- 结果类型: 确定函数调用表达式的类型。
- 安全数值: 保证正确的整数算术。
- 作用域: 作用域保护和 unique_resource 包装器的集合。
- 作用域退出: 在作用域退出时执行任意代码。
- 序列化: 用于持久性和封送处理的序列化。
- Signals2: 托管信号和槽回调实现(线程安全版本 2)。
- 智能指针: 智能指针类模板。
- 排序: 高性能模板排序函数。
- Spirit: LL 解析器框架将解析器直接表示为内联 C++ 中的 EBNF 语法。
- Spirit Classic: LL 解析器框架将解析器直接表示为内联 C++ 中的 EBNF 语法。
- Spirit Repository: Spirit 存储库是一个社区努力,收集了 Qi 解析器和 Karma 生成器的不同可重用组件(基元、指令、语法等)。
- 栈跟踪: 收集、存储、复制和打印回溯。
- 状态图: Boost.Statechart - 可以用易于阅读和维护的 C++ 代码实现任意复杂的有限状态机。
- 静态断言: 静态断言(编译时断言)。
- 静态字符串: 一个固定容量的动态大小字符串。
- Stl_interfaces: 用于定义迭代器、视图和容器的 C++14 及更高版本的 CRTP 模板。
- 字符串算法: 字符串算法库。
- 字符串引用: 字符串视图模板。
- 字符串视图: 字符串视图模板。
- 交换: 增强的通用交换函数。
- 系统: 可扩展的错误报告。
- 测试: 支持简单的程序测试、完整的单元测试以及程序执行监控。
- 线程: 可移植的 C++ 多线程。C++11、C++14、C++17。
- 抛出异常: Boost 库抛出异常的通用基础结构。
- 计时器: 事件计时器、进度计时器和进度显示类。
- 标记器: 将字符串或其他字符序列分解成一系列标记。
- 三值布尔: 三态布尔类型库。
- TTI: 类型特征内省库。
- 元组: 简化返回多个值的函数的定义,等等。
- 类型擦除: 基于概念的运行时多态性。
- 类型索引: 运行时/编译时可复制的类型信息。
- 类型特征: 用于类型的基本属性的模板。
- Typeof: Typeof 运算符模拟。
- uBLAS: uBLAS 提供张量、矩阵和向量类以及基本的线性代数例程。支持多种密集、打包和稀疏存储方案。
- 单位: 零开销的维度分析和单位/数量操作和转换。
- 无序: 无序关联容器。
- URL: C++11 中的 URL 解析。
- 实用程序: 各种实用程序,例如基于成员的基类习语和 C++03 中的二进制文字。
- Uuid: 通用唯一标识符。
- 值初始化: 基于 David Abrahams 的原始想法,用于统一语法值初始化的包装器。
- 变体: 安全、通用、基于栈的区分联合容器。
- Variant2: std::variant 的永不无值的强保证实现。
- VMD: 可变参数宏数据库。
- Wave: Boost.Wave 库是 C99/C++ 预处理器功能的标准符合且高度可配置的实现,封装在一个易于使用的迭代器接口后面。
- Xpressive: 可以写成字符串或表达式模板的正则表达式,并且可以使用上下文无关语法的功能相互引用和递归引用自身。
- YAP: 一个适用于 C++14 及更高版本的表达式模板库。