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 标准 构建和连接 仅头文件 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 标准 构建和连接 仅头文件 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 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 的东西吧),或者我们可以使用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 第一次发布 标准 构建和连接 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 构建和连接 仅头文件 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的 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 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 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 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 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 作者 第一次发布 标准 构建和连接 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 第一次发布 标准 构建和连接 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 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 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 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 作者 第一次发布 标准 构建和连接 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 第一次发布 标准 构建和连接 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 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 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 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 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 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 因篇幅问题不能全部显示,请点此查看更多更全内容