Boost简介

原文链接

一BOOST

Boost带领你远远地超越了C++标准库,它使得C++编程更优雅、更有活力、更高产。(引自:Beyond the C++ Standard Library: An Introduction to Boost)(慢慢体会哦!)

二参考

主要:

boost的在线document:http://boost.org/libs/libraries.htm

唯一的关于boost的book:Beyond the C++ Standard Library: An Introduction to Boost

其他:

http://www.boost.org/

heroboy2000:   http://blog.csdn.net/heroboy2000/
dozb:          http://dozb.bokee.com/catalog_2005.html

boost china:   http://www.stlchina.org/twiki/bin/view.pl/Main/BoostChina


三 boost库索引(来自boost china)(本系列文章使用boost 1.34版本)

2.0 字符串和文本处理( String and text processing)

  • conversion/lexical_cast - lexical_cast 类模板,作者 Kevlin Henney.
  • format - 类型安全的 '类似printf' 格式的操作, 作者 Samuel Krempp.
  • regex - 正则表达式库, 作者 John Maddock .
  • spirit - LL分析的框架,在嵌入式C++中根据EBNF规则对文件进行分析, 作者 Joel de Guzman and team.
  • tokenizer - 把字符串或其他字符序列分解成一系列标记(tokens), 作者 John Bandela.
  • string_algo - 字符串算法库, 作者 Pavol Droba .

2.1 容器(Containers)

  • array - STL风格封装下的定长数组, 作者 Nicolai Josuttis.
  • dynamic_bitset - std::bitset的动态长度版本, 作者 Jeremy Siek 和 Chuck Allison.
  • graph - 泛型图的组件和算法, 作者 Jeremy Siek 和 a University of Notre Dame team.
  • multi_array - 多维数组的容器和配接器, 作者 Ron Garcia.
  • multi_index - 提供对可重复键值STL兼容容器的存取接口, 作者 Joaquín M López Muñoz.
  • property map - Concepts defining interfaces which map key objects to value objects, 作者 Jeremy Siek.
  • variant - 安全, 泛型, 基于栈的,不同于联合容器, 作者 Eric Friedman and Itay Maman.

2.2 迭代器(Iterators)

  • graph - 泛型图的组件和算法, 作者 Jeremy Siek 和 a University of Notre Dame team. 
  • iterators - Iterator 构造框架, 配接器, 概念, 和其他, 作者 Dave Abrahams, Jeremy Siek, 和 Thomas Witt.
  • operators - 使算法类和迭代器容易的模板, 作者 Dave Abrahams 和 Jeremy Siek.
  • tokenizer - 把字符串或其他字符序列分解成一系列标记(tokens), 作者 John Bandela.

2.3 算法( Algorithms )

  • graph - 泛型图的组件和算法, 作者 Jeremy Siek 和 a University of Notre Dame team. 
  • minmax - 标准库扩展,用于同时进行 min/max 和 min/max 元素计算, 作者 Hervé Brönnimann.
  • string_algo - 字符串算法库, 作者 Pavol Droba .
  • utility - 类 next(),  prior() 函数模板, 作者 Dave Abrahams and others.
  • range - new 根基,其为建于new iterator概念之上的泛型计算, 作者 Thorsten Ottosen.

2.4 函数对象和高阶编程(Function objects and higher-order programming)

  • bind 和 mem_fn - 为函数/对象/指针和成员函数而被泛化的组合者, 作者 Peter Dimov.
  • function - 为延期调用和回调的函数对象的包裹, 作者 Doug Gregor.
  • functional - 增强的函数对象配接器, 作者 Mark Rodgers.
  • lambda - 在实际调用地点定义小的无名函数对象, 作者 Jaakko Järvi 和 Gary Powell.
  • ref - 一个工具库,用于传递引用到泛型函数, 作者 Jaako Järvi, Peter Dimov, Doug Gregor, 和 Dave Abrahams.
  • signals - 被管理的信号和邮槽回调的实现, 作者 Doug Gregor.
  • result_of - 确定函数调用表达式的类型.

2.5 泛型编程(Generic Programming)

  • call_traits - 实现自动判断传入参数的方式, 作者 John Maddock, Howard Hinnant, et al.
  • concept check - 泛型编程的工具, 作者 Jeremy Siek.
  • enable_if - 函数模板重载时的选择性包含, 作者 Jaakko Järvi, Jeremiah Willcock, 和 Andrew Lumsdaine.
  • in_place_factory, typed_in_place_factory- Generic in-place construction of contained objects with a variadic argument-list, 作者 Fernando Cacciola.
  • operators - 使算法类和迭代器容易的模板, 作者 Dave Abrahams 和 Jeremy Siek.
  • property map - Concepts defining interfaces which map key objects to value objects, 作者 Jeremy Siek.
  • static_assert - 静态断言 (编译时断言), 作者 John Maddock.
  • type_traits - 类型的基本属性的模板, 作者 John Maddock, Steve Cleary, et al.

2.6 模板元编程(Template Metaprogramming )

  • mpl - 模板元编程框架,用于编译时计算,序列化和元函数类, 作者 Aleksey Gurtovoy.
  • static_assert - 静态断言 (编译时断言), 作者 John Maddock.
  • type_traits - 类型的基本属性的模板, 作者 John Maddock, Steve Cleary, et al.

2.7 预处理元编程(Preprocessor Metaprogramming)

  • preprocessor - 预处理元编程工具,包含重复和递归, 作者 Vesa Karvonen 和 Paul Mensonides.

2.8 并发编程(Concurrent Programming)

  • thread - 轻便的C++多线程库, 作者 William Kempf.

2.9 数学和数值计算(Math and numerics)

  • math - 在数学领域的几个贡献, 作者 various authors.
  • conversion/numeric_cast - numeric_cast 类模板, 作者 Kevlin Henney.
  • numeric/conversion - 优化的基于策略的数值变换, 作者 Fernando Cacciola.
  • integer - 能够帮助简化对整数类型的处理。
  • interval - Extends the usual arithmetic functions to mathematical intervals, 作者 Guillaume Melquiond, Hervé Brönnimann and Sylvain Pion.
  • math/common_factor - 最大公约数和最小公倍数, 作者 Daryle Walker.
  • math/octonion - Octonions, 作者 Hubert Holin.
  • math/quaternion - Quaternions, 作者 Hubert Holin.
  • math/special_functions - 数学方面的函数比如 atanh, sinc, 和 sinhc, 作者 Hubert Holin.
  • multi_array - 多维数组的容器和配接器, 作者 Ron Garcia.
  • operators - 使算法类和迭代器容易的模板, 作者 Dave Abrahams 和 Jeremy Siek.
  • random - 随机数生成的完整系统, 作者 Jens Maurer.
  • rational - 有理数类, 作者 Paul Moore.
  • uBLAS - 基本线性代数,用于矩阵操作, 作者 Joerg Walter and Mathias Koch.

2.10 纠错和测试( Correctness and testing)

  • concept check - 泛型编程的工具, 作者 Jeremy Siek.
  • static_assert - 静态断言 (编译时断言), 作者 John Maddock.
  • test - 支持简单程序测试, 完整单元测试, 和程序执行监控, 作者 Gennadiy Rozental.

2.11数据结构( Data structures)

  • any - 安全,泛型的容器,包含不同类型的值, 作者 Kevlin Henney.
  • compressed_pair - 针对pair当中空成员做了一些优化, 作者 John Maddock, Howard Hinnant, et al.
  • multi_index - 提供对可重复键值STL兼容容器的存取接口, 作者 Joaquín M López Muñoz.
  • tuple - 容易地定义可返回多个值的函数, 作者 Jaakko Järvi.
  • variant - 安全, 泛型, 基于栈的,不同于联合容器, 作者 Eric Friedman and Itay Maman.

2.12 输入/输出(Input/Output)

  • format - 类型安全的 '类似printf' 格式的操作, 作者 Samuel Krempp.
  • io state savers - 保存 I/O 状态来防止混乱的数据, 作者 Daryle Walker.
  • program_options - 通过命令行,配置文件和其他来源来存取配置参数, 作者 Vladimir Prus.
  • serialization - Serialization of arbitrary data for persistence and marshalling, 作者 Robert Ramey
  • assign - 用常数或更容易方式生成的数据填充容器, 作者 Thorsten Ottosen.

2.13 跨语言支持(Inter-language support)

  • python - 映射 C++ 类和函数给 Python 使用, 作者 Dave Abrahams.

2.14 内存(Memory)

  • pool - 内存池管理, 作者 Steve Cleary.
  • smart_ptr - 五个智能指针类模板, 作者 Greg Colvin, Beman Dawes, Peter Dimov, 和 Darin Adler.
  • utility - 类 noncopyable 加 checked_delete()checked_array_delete()next(),  prior() 函数模板, 加base-from-member idiom, 作者 Dave Abrahams 等.

2.15解析( Parsing )

  • spirit - LL分析的框架,在嵌入式C++中根据EBNF规则对文件进行分析, 作者 Joel de Guzman and team.

2.16杂项( Miscellaneous )

  • base-from-member - Idiom to initialize a base class with a member, 作者 Daryle Walker.
  • compressed_pair - 针对pair当中空成员做了一些优化, 作者 John Maddock, Howard Hinnant, et al.
  • conversion - 各种类型间的转化,Numeric, polymorphic, 和 lexical casts, 作者 Dave Abrahams and Kevlin Henney.
  • numeric/conversion - 优化的基于策略的数值变换, 作者 Fernando Cacciola.
  • crc - 循环沉余码, 作者 Daryle Walker.
  • date_time - Date-Time 库, 作者 Jeff Garland.
  • filesystem - 方便地操作文件路径, 通过iteration访问目录, 和其他有用的文件系统操作, 作者 Beman Dawes.
  • optional - 对可选项值的可识别联合包裹, 作者 Fernando Cacciola.
  • program_options - 通过命令行,配置文件和其他来源来存取配置参数, 作者 Vladimir Prus.
  • timer - 事件定时器, 进度定时器, 和进度显示类, 作者 Beman Dawes.
  • tribool - 3种状态的 boolean 类型库, 作者 Doug Gregor.
  • utility - 类 noncopyable 加 checked_delete()checked_array_delete()next(),  prior() 函数模板, 加base-from-member idiom, 作者 Dave Abrahams 等.
  • value_initialized - 为统一的语法的值初始化的包裹, 作者 Fernando Cacciola, 基于 David Abrahams 的思想.

2.17 Broken compiler workarounds

    • compatibility - 对不一致的标准库提供帮助, 作者 Ralf Grosse-Kunstleve and Jens Maurer.
    • config - 帮助 boost 库的开发者配置编译器特性;不打算提供给库用户使用.
posted @ 2012-05-28 16:25 wangkangluo1 阅读(...) 评论(...) 编辑 收藏