您的当前位置:首页正文

Boost库概览

来源:一二三四网
2008-5-24 Tu Yongce V1.0

1. Boost库概览

1.1. 按字母序

1.1.1. Any

用于存储不同类型的值的安全的泛型容器。 作者 第一次发布 标准 构建和连接

Kevlin Henney 1.23.0 仅头文件

1.1.2. Array

与STL兼容的常量大小的数组的容器包装类。 作者 第一次发布 标准 构建和连接

Nicolai Josuttis 1.17.0 TR1 仅头文件

1.1.3. Asio

可移植的网络库,包括Socket、计时器、域名解析和Socket流。 作者 第一次发布 标准 构建和连接

Chris Kohlhoff 1.35.0 仅头文件

1.1.4. Assign

非常方便地使用常数或者生成数据填充容器。 作者 第一次发布 标准 构建和连接

Thorsten Ottosen 1.32.0 仅头文件

1.1.5. Bimap

双向map库;使用Boost.Bimap,你可以创建两个类型都可作为键值的关联容器。 作者 第一次发布

Matias Capeletto 1.35.0

1 / 23

2008-5-24 Tu Yongce V1.0

标准 构建和连接

仅头文件

1.1.6. Bind

boost::bind是标准函数std::bind1st和std::bind2nd的泛化。它支持任意函数对象、函数、函数指针和成员函数指针,也能够用于绑定任何参数到一个特定的值或者路由输入参数到任意位置。 作者 第一次发布 标准 构建和连接

Peter Dimov 1.25.0 TR1 仅头文件

1.1.7. CRC

Boost CRC库提供了CRC(循环冗余校验码)计算对象的两个实现和CRC计算函数的两个实现。实现是基于模板的。 作者 第一次发布 标准 构建和连接

Daryle Walker 1.22.0 仅头文件

1.1.8. Call Traits

为参数传递定义了类型。 作者 第一次发布 标准 构建和连接

John Maddock, Howard Hinnant等 1.13.0 仅头文件

1.1.9. Circular Buffer

一个STL兼容的容器,也被广泛称为环缓冲区或者循环缓冲区。 作者 第一次发布 标准 构建和连接

Jan Gaspar 1.35.0 仅头文件

1.1.10. Compatibility

帮助非标准兼容的库。 作者 第一次发布

Ralf Grosse-Kunstleve, Jens Maurer 1.21.2

2 / 23

2008-5-24 Tu Yongce V1.0

标准 构建和连接

仅头文件

1.1.11. Compressed Pair

空成员优化。 作者 第一次发布 标准 构建和连接

John Maddock, Howard Hinnant等 1.13.0 仅头文件

1.1.12. Concept Check

泛型编程工具。 作者 第一次发布 标准 构建和连接

Jeremy Siek 1.19.0 仅头文件

1.1.13. Config

帮助Boost库开发人员应付编译器特性;不是为库用户准备的。 作者 第一次发布 标准 构建和连接

1.9.0 仅头文件

1.1.14. Conversion

多态转换和文字转换(译注:lexical cast,指各种类型的数据和字符串形式的相互转换)。 作者 第一次发布 标准 构建和连接

Dave Abrahams, Kevlin Henny 1.20.0 仅头文件

1.1.15. Date Time

一组基于泛型编程概念的日期时间库。 作者 第一次发布 标准 构建和连接

Jeff Garland 1.29.0 仅头文件

3 / 23

2008-5-24 Tu Yongce V1.0

1.1.16. Disjoint Sets

Boost.DisjointSets提供不相交集合操作,并使用union by rank和路径压缩技术加速操作。 作者 第一次发布 标准 构建和连接

Jeremy Siek, Lie-Quan Lee, Andrew Lumsdaine 1.29.0 仅头文件

译注:作者Lie-Quan Lee是Boost库中难得一见的华人作者,中文名未知。其在浙江大学取得物理学的学士和硕士学位,在巴黎圣母大学取得计算科学与工程硕士和博士学位(导师就是上面的Andrew Lumsdaine)。其在圣母大学的硕士和博士学位论文都是关于泛型编程的东西。他也是

Boost.Graph库(BGL,Boost Graph Library)的作者之一(他在圣母大学的硕士论文就是泛型图形组件库的设计)。 1.1.17. Dynamic Bitset

dynamic_bitset类表示位的集合,提供operator[]访问每一位的值,并提供所有能够应用于内置整型的逐位操作符,例如操作符&和<<。集合中位的个数通过构造函数的参数在运行时指定(译注:标准库的bitset只能在编译时指定位的个数)。 作者 第一次发布 标准 构建和连接

Jeremy Siek, Chunk Allison 1.29.0 仅头文件

1.1.18. Enable If

提供一组工具以允许函数模板或者类模板特化是否从候选匹配集中排除。 作者 第一次发布 标准 构建和连接

Jaakko Järvi, Jeremiah Willcock, Andrew Lumsdaine 1.31.0 仅头文件

1.1.19. Filesystem

Boost.Filesystem库提供了可移植的工具来查询和操作路径、文件和目录。 作者 第一次发布 标准 构建和连接

Beman Dawes 1.30.0 自动连接

1.1.20. Foreash

在C++中,写一个循环来迭代一个序列是乏味的。我们可以使用迭代器,其需要相当数量的boiler-plate(译注:指跟目的不紧密相关又必须有的冗余代码,想想for循环括号中

4 / 23

2008-5-24 Tu Yongce V1.0

的东西吧),或者我们可以使用std::for_each()算法并把循环体移到一个谓词(译注:应该是函数对象或者函数)中,其需要较少的boiler-plate并强迫我们把逻辑从它被使用的地方移走。相比之下,其它一些语言,例如Perl,提供了一个专门的“foreach”构件来自动处理这些个过程。BOOST_FOREACH刚好就是这样一个为C++准备的构件。它为我们迭代序列,把我们从不得不直接处理迭代器或者写谓词(译注:应该是函数对象或者函数)中解放出来。 作者 第一次发布 标准 构建和连接

Eric Niebler 1.34.0 仅头文件

1.1.21. Format

format库提供了一个类用于按照格式字符串格式化参数,就像printf所做的一样,但是有两个主要区别:format把参数发送到内部流中,因此完全是类型安全的,并且很自然地支持所有用户定义的类型;省略号(…)不能够被正确地用在强类型的格式化环境中,因此有任意参数的函数调用被连续的传送参数的操作符%调用代替。 作者 第一次发布 标准 构建和连接

Samuel Krempp 1.29.0 仅头文件

1.1.22. Function

对推迟的调用或者回调的函数对象包装类。 作者 第一次发布 标准 构建和连接

Doug Gregor 1.23.0 TR1 仅头文件

1.1.23. Function Types

Boost.FunctionTypes提供了分类、分解和合成函数、函数指针、函数引用和成员指针类型的功能。 作者 第一次发布 标准 构建和连接

Tobias Schwinger 1.35.0 仅头文件

1.1.24. Functional

Boost.Functional库包含了一系列函数对象包装类的类模板。 作者

Mark Rodgers

5 / 23

2008-5-24 Tu Yongce V1.0

第一次发布 标准 构建和连接

1.16.0 仅头文件

1.1.25. Functional/Hash

一个TR1散列函数对象能够被扩展用来散列用户自定义类型。 作者 第一次发布 标准 构建和连接

Daniel James 1.33.0 TR1 仅头文件

1.1.26. Fusion

与元组(tuple),包括各种容器、算法等,一块工作的库。 作者 第一次发布 标准 构建和连接

Daniel James 1.35.0 仅头文件

1.1.27. GIL

泛型图像库。 作者 第一次发布 标准 构建和连接

Lubomir Bourdev, Hailin Jin 1.35.0 仅头文件

1.1.28. Graph

BGL图接口和图组件是泛型的,和STL一样。 作者 Jeremy Siek和圣母大学的团队。 第一次发布 标准 构建和连接

1.18.0

1.1.29. IO State Savers

Boost的I/O子库有助于分离大量的Boost头文件。该子库包含了各种不同的东东用于标准I/O库。 作者 第一次发布 标准

Daryle Walker 1.28.0

6 / 23

2008-5-24 Tu Yongce V1.0

构建和连接 仅头文件

1.1.30. In Place Factory, Typed In Place Factory

使用可变参数列表(variadic argument-list)的被包含对象的泛型原地构造。 作者 第一次发布 标准 构建和连接

Femando Caccioda 1.9.0 仅头文件

1.1.31. Integer

Boost.Integer的头文件和类的组织在设计时吸收了C99的的优点,没有采用C++ 98标准中的未定义行为。头文件使标准整型类型在名字空间boost中安全地可用,不会在名字空间std中放置任何名字。 作者 第一次发布 标准 构建和连接

1.9.0 仅头文件

1.1.32. Interprocess

共享内存、内存映射文件、进程共享互斥、条件变量、容器和分配器。 作者 第一次发布 标准 构建和连接

Ion Gaztañaga 1.35.0 仅头文件

1.1.33. Interval

扩展常用的算术函数到数学敬意。 作者 第一次发布 标准 构建和连接

Guillaume Melquiond, Hervé Brönnimann, Sylvain Pion 1.30.0 仅头文件

1.1.34. Intrusive

侵入式容器和算法。 作者 第一次发布 标准 构建和连接

Ion Gaztañaga 1.35.0 仅头文件

7 / 23

2008-5-24 Tu Yongce V1.0

1.1.35. Iostreams

Boost.IOStreams提供定义流、流缓冲区和I/O过滤器的框架。 作者 第一次发布 标准 构建和连接

Jonathan Turkanis 1.33.0 仅头文件

1.1.36. Iterators

Boost Iterator库包含两部分。第一部分是概型系统,其扩展了C++标准迭代器需求。第二部分是组件框架,用于构建基于这些扩展概型的迭代器,并包含几个有用的迭代器适配器。 作者 第一次发布 标准 构建和连接

Dave Abrahams, Jeremy Siek, Thomas Witt 1.21.0 仅头文件

1.1.37. Lambda

在实际调用处定义小的未命名的函数对象,及其它。 作者 第一次发布 标准 构建和连接

Jaakko Järvi , Gary Powell 1.28.0 仅头文件

1.1.38. MPI

消息传递接口库,用于在分布式存储的并行应用编程。 作者 第一次发布 标准 构建和连接

Douglas Gregor, Matthias Troyer 1.35.0 仅头文件

1.1.39. MPL

Boost.MPL库是一个用于编译时算法、序列、元函数的通用目的、高层次的C++模板元编程框架。它提供了一个概念性的基础和一组强大的、一致的工具集,使在现有语言中使用C++进行明晰的元编程尽可能地轻松和愉快。 作者 第一次发布 标准 构建和连接

Aleksey Gurtovoy 1.30.0 仅头文件

8 / 23

2008-5-24 Tu Yongce V1.0

1.1.40. Math

Boost.Math库包括数学领域的多个贡献:最大公约数(GCD)和最小公倍数(LCM)库提供对两个整数的GCD和LCM的运行时和编译时计算。专业函数库目前提供了八个模板化的专业函数,在名字空间boost中。复数反三角函数是目前C++标准中的三角函数的反函数。四元数(Quaternion)是复数的衍生,通常被用于在三维空间中进行参数旋转。八元数(Octonion),跟四元数一样,也是复数的衍生。 作者 第一次发布 标准 构建和连接

若干 1.23.0 仅头文件

1.1.41. Math/Common Factor

最大公约数和最小公倍数。 作者 第一次发布 标准 构建和连接

Daryle Walker 1.26.0 仅头文件

1.1.42. Math/Octonion

八元数 作者 第一次发布 标准 构建和连接

Hubert Holin 1.23.0 仅头文件

1.1.43. Math/Quaternion

四元数 作者 第一次发布 标准 构建和连接

Hubert Holin 1.23.0 仅头文件

1.1.44. Math/Special Functions

广泛挑选的数学专业函数 作者 第一次发布 标准 构建和连接

John Maddock, Paul Bristow, Hubert Holin, Xiaogang Zhang 1.35.0 仅头文件

9 / 23

2008-5-24 Tu Yongce V1.0

1.1.45. Math/Statistical Distributions

广泛挑选的一维随机变量的统计分布和操作它们的函数。 作者 第一次发布 标准 构建和连接

John Maddock, Paul Bristow 1.35.0 仅头文件

1.1.46. Member Function

用于函数、对象、指针和成员函数的泛化的绑定器。 作者 第一次发布 标准 构建和连接

Peter Dimov 1.25.0 仅头文件

1.1.47. Min-Max

对标准库函数min/max的扩展,同时计算最小和最大元素。 作者 第一次发布 标准 构建和连接

Hervé Brönnimann 1.32.0 仅头文件

1.1.48. Multi-Array

Boost.MultiArray提供了一个泛型的N维数组概型定义和其接口的常见实现。 作者 第一次发布 标准 构建和连接

Ron Garcia 1.29.0 仅头文件

1.1.49. Multi-Index

Boost Multi-index容器库提供了一个名为multi_index_container的类模板,能够构造维护着一个或多个有不同排序和访问语义的容器。 作者 第一次发布 标准 构建和连接

Joaquín M López Muñoz 1.32.0 仅头文件

10 / 23

2008-5-24 Tu Yongce V1.0

1.1.50. Numeric Conversion

优化的基于策略的数字转换。 作者 第一次发布 标准 构建和连接

Femando Cacciola 1.32.0 仅头文件

1.1.51. Operators

使算术类和其上的操作符实现更加容易的模板。 作者 第一次发布 标准 构建和连接

Dave Abrahams, Jeremy Siek 1.9.0 仅头文件

1.1.52. Optional

用于可选值的有差别的联合的包装类。 作者 第一次发布 标准 构建和连接

Fernando Cacciola 1.30.0 仅头文件

1.1.53. Parameter

Boost.Parameter库提供函数可通过名字接受参数。 作者 第一次发布 标准 构建和连接

David Abrahams, Daniel Wallin 1.33.0 仅头文件

1.1.54. Pointer Container

用于存储堆分配的多态对象,使OO编程更加容易。 作者 第一次发布 标准 构建和连接

Thorsten Ottosen 1.33.0 仅头文件

1.1.55. Pool

内存池管理。

11 / 23

2008-5-24 Tu Yongce V1.0

作者 第一次发布 标准 构建和连接

Steve Cleary 1.21.0 仅头文件

1.1.56. Preprocessor

预处理元编程工具,包括重复和递归。 作者 第一次发布 标准 构建和连接

Vesa Karvonen, Paul Mensonides 1.26.0 仅头文件

1.1.57. Program Options

program_options库允许程序员获取程序选项,也就是来自用户的(名称,值)对,通过传统的方法,例如命令行和配置文件。 作者 第一次发布 标准 构建和连接

Vladimir Prus 1.32.0 仅头文件

1.1.58. Property Map

定义了把键对象映射到值对象的接口的概型。 作者 第一次发布 标准 构建和连接

Jeremy Siek 1.19.0 仅头文件

1.1.59. Python

Boost Python库是一个对接Python和C++的框架。它允许你快速地、准确无误地把C++类、函数和对象导出到Python,或者相反。不需要专门的工具,仅仅使用你的C++编译器。 作者 第一次发布 标准 构建和连接

Dave Abrahams 1.19.0

1.1.60. Random

一个用于随机数产生的完整系统。 作者

Jens Maurer

12 / 23

2008-5-24 Tu Yongce V1.0

第一次发布 标准 构建和连接

1.15.0 TR1 仅头文件

1.1.61. Range

一个新的基础设施,用于在新的迭代器概型上构建的泛型算法。 作者 第一次发布 标准 构建和连接

Thorsten Ottosen 1.32.0 仅头文件

1.1.62. Rational

一个有理数类。 作者 第一次发布 标准 构建和连接

Paul Moore 1.11.0 仅头文件

1.1.63. Ref

一个传递引用到泛型函数的工具库。 作者 第一次发布 标准 构建和连接

Jaako Järvi, Peter Dimov, Doug Gregor, Dave Abrahams 1.25.0 TR1 仅头文件

1.1.64. Regex

正则表达式库。 作者 第一次发布 标准 构建和连接

John Maddock 1.18.0 TR1 自动链接

1.1.65. Serialization

数据串行化。 作者 第一次发布 标准 构建和连接

Robert Ramey 1.32.0 自动链接

13 / 23

2008-5-24 Tu Yongce V1.0

1.1.66. Signals

托管的信号&插槽回调实现。 作者 第一次发布 标准 构建和连接

Doug Gregor 1.29.0 自动链接

1.1.67. Smart Ptr

五个智能指针类模板。 作者 第一次发布 标准 构建和连接

Greg Colvin, Beman Dawes, Peter Dimov, Darin Adler 1.23.0 TR1 仅头文件

1.1.68. Spirit

LL分析框架,描述在C++中直接内联EBNF语法的分析器。 作者 第一次发布 标准 构建和连接

Joel Guzman, Hartmut Kaiser, Dan Nuffer 1.30.0 仅头文件

1.1.69. Statechart

Boost.Statechart——任意复杂的有限状态机能够用相当容易的可读的和可维护的C++代码实现。 作者 第一次发布 标准 构建和连接

Andreas Huber Dönni 1.34.0 仅头文件

1.1.70. Static Assert

静态断言(编译时断言)。 作者 第一次发布 标准 构建和连接

John Maddock 1.19.0 仅头文件

14 / 23

2008-5-24 Tu Yongce V1.0

1.1.71. String Algo

字符串算法库。 作者 第一次发布 标准 构建和连接

Pavol Droba 1.32.0 仅头文件

1.1.72. System

操作系统支持,包括将是C++0x标准库一部分的诊断支持。 作者 第一次发布 标准 构建和连接

Beman Dawes 1.35.0 仅头文件

1.1.73. TR1

TR1库提供了C++技术报告中标准库扩展的实现。该库本身并没有实现TR1组件,而是一个轻型的包装,它将包含你的标准库的TR1实现(如果有的话),否则它将包含Boost库的等价物,并把它们导入到名字空间std::tr1中。 作者 第一次发布 标准 构建和连接

John Maddock 1.34.0 TR1 仅头文件

1.1.74. Test

支持简单的程序测试,完全的单元测试和程序执行监视。 作者 第一次发布 标准 构建和连接

Gennadiy Rozental 1.21.0 自动链接

1.1.75. Thread

可移植的C++多线程。

作者 Anthony Williams(初始作者是William Kempf) 第一次发布 标准 构建和连接

1.25.0 Proposed 自动链接

15 / 23

2008-5-24 Tu Yongce V1.0

1.1.76. Timer

事件计时器、进度计时器和进度显示类。 作者 第一次发布 标准 构建和连接

Beman Dawes 1.9.0 仅头文件

1.1.77. Tokenizer

把字符串或者其它字符序列分割成一系列子串(token)。 作者 第一次发布 标准 构建和连接

John Bandela 1.23.0 仅头文件

1.1.78. Tribool

三个状态的布尔类型库。 作者 第一次发布 标准 构建和连接

Doug Gregor 1.32.0 仅头文件

1.1.79. Tuple

使返回多个值的函数定义更加容易,及其它。 作者 第一次发布 标准 构建和连接

Jaakko Järvi 1.24.0 TR1 仅头文件

1.1.80. Type Traits

用于类型的基本属性的模板。 作者 第一次发布 标准 构建和连接

John Maddock, Steve Cleary等 1.13.0 TR1 仅头文件

1.1.81. Typeof

typeof操作符模拟。

16 / 23

2008-5-24 Tu Yongce V1.0

作者 第一次发布 标准 构建和连接

Arkadiy Vertleyb, Peder Holt 1.34.0 仅头文件

1.1.82. Utility

不可复制的类;checked_delete(), checked_array_delete(), next(), prior()函数模板;Base-from-Member惯用法(译注:使用派生类的数据成员初始化基类)。 作者 Dave Abrahams和其他人 第一次发布 标准 构建和连接

1.13.0 仅头文件

1.1.83. Value Initialized

统一的值初始化包装,基于David Abrahams的最初思想。 作者 第一次发布 标准 构建和连接

Femando Cacciola 1.9.0 仅头文件

1.1.84. Variant

安全的、泛型的、基于栈的差别联合容器。 作者 第一次发布 标准 构建和连接

Eric Friedman, Itay Maman 1.31.0 仅头文件

1.1.85. Wave

Boost.Wave库是一个对C99/C++要求的预处理器功能用易用的、迭代器接口包装的与标准兼容的、高可配置的实现。 作者 第一次发布 标准 构建和连接

Hartmut Kaiser 1.33.0 自动连接

1.1.86. Xpressive

正则表达式,其能够写成字符串或者表达式模板,并能够相互引用和递归引用自己。 作者

Eric Niebler

17 / 23

2008-5-24 Tu Yongce V1.0

第一次发布 标准 构建和连接

1.34.0 仅头文件

1.1.87. uBLAS

uBLAS(Basic Linear Algebra Subprograms)提供矩阵和向量类,以及基本的线程代数例程。支持多个稠密的、集中的(packed)和稀疏的存储方案。 作者 第一次发布 标准 构建和连接

Joerg Walter, Mathias Koch 1.29.0 仅头文件

1.2. 按分类

1.2.1. 字符串和文本处理

z conversion/lexical_cast z format z iostreams z regex z spirit z string_algo z tokenizer z wave z xpressive 1.2.2. 容器

z array z bimap z circular_buffer z dynamic_bitset z gil z graph z intrusive

18 / 23

2008-5-24 Tu Yongce V1.0

z multi_array z multi_index z pointer container z property map z variant 1.2.3. 迭代器

z gil z graph z iterators z operators z tokenizer 1.2.4. 算法

z foreach z gil z graph z minmax z range z string_algo z utility

1.2.5. 函数对象和高阶编程

z bind和mem_fn z function z functional z functional/hash z lambda z ref z signals z result_of 19 / 23

2008-5-24 Tu Yongce V1.0

1.2.6. 泛型编程

z call_traits z concept check z enable_if z function_types z gil

z in_place_factory, typed_in_place_factory z operators z property map z static_assert z type_traits 1.2.7. 模板元编程

z function_types z fusion z mpl z static_assert z type_traits 1.2.8. 预处理器元编程

z preprocessor 1.2.9. 并发编程

z asio z interprocess z MPI z thread 1.2.10. 数学和数字

z integer z interval 20 / 23

2008-5-24 Tu Yongce V1.0

z math

z math/complex number algorithms z math/common_factor z math/octonion z math/quaternion z math/special_functions z math/statistical distributions z multi_array z numeric/conversion z operators z random z rational z uBLAS 1.2.11. 正确性和测试

z concept check z static_assert z test 1.2.12. 数据结构

z any z bimap

z compressed_pair z fusion z multi_index z pointer container z tuple z variant 1.2.13. 图像处理

z gil 21 / 23

2008-5-24 Tu Yongce V1.0

1.2.14. 输入/输出

z asio z assign z format z io state savers z iostreams z program_options z serialization 1.2.15. 其它语言支持

z python 1.2.16. 内存

z pool z smart_ptr z utility 1.2.17. 分析

z spirit 1.2.18. 编程接口

z function z parameter 1.2.19. 杂项

z baser-from-member z compressed_pair z conversion z date_time z filesytem

z numeric/conversion 22 / 23

2008-5-24 Tu Yongce V1.0

z optional z program_options z statechart z system z timer z TR1 z tribool z typeof z utility z value_initialzed 1.2.20. 编译器相关

z compatibility z config

1.3. 移除的库

1.3.1. compose

在Boost 1.32中被移除,可以使用Bind或者Lambda代替其功能。

23 / 23

因篇幅问题不能全部显示,请点此查看更多更全内容

Top