Boost C++ 库

……世界上最受推崇和设计精良的 C++ 库项目之一。 Herb SutterAndrei AlexandrescuC++ 编码规范

版本 1.33.1

版本 1.33.1

2006年12月5日 12:00 格林尼治标准时间

文档

下载
平台文件
unixboost_1_33_1.tar.bz2
boost_1_33_1.tar.gz
windowsboost_1_33_1.exe
boost_1_33_1.zip

更新的库

  • Any 库: 现在在any_cast 文档页面上记录了在 1.33.0 中引入的强制转换为引用类型。
  • Bind 库: Bind 表达式现在支持比较和否定。例如:bind(&X::name, _1) < bind(&X::name, _2)
  • Config 库: 使用后不要 undef BOOST_LIB_TOOLSET
  • Boost.Python:
    • 构建现在默认假设使用 Python 2.4,而不是 2.2
    • 支持无需 Unicode 支持构建的 Python
    • 支持包装具有重载取地址 (&) 运算符的类
  • 智能指针库: 修复了在 PowerPC (Mac OS X) 上使用 Metrowerks CodeWarrior 启用内联以及在 PowerPC 64 上使用 GNU GCC 时出现的问题。
  • 正则表达式库: 修复了提供的 makefile,以及其他一些特定于编译器的细微更改。有关这些和其他细微更改的更多信息,请参阅正则表达式历史记录页面
  • Iostreams 库: 改善了访问链组件的接口,向文件和文件描述符设备添加了is_open 成员,修复了 Windows 上的内存映射文件,并对文档进行了细微更改。
  • Boost.Python:
    • 添加了对非静态属性的文档字符串的支持。
    • 我们现在仅为最后一个重载导出为init<optional<> > 和 *XXX*_FUNCTION_OVERLOADS() 提供的客户端文档字符串。
    • 添加了对 MacOS 上的嵌入式 VC++ 4 和 GCC-3.3 的支持
    • 引入了对来自 Python 的 shared_ptr 右值转换的更好支持。
    • 支持使用索引套件公开vector<T*>
    • 更新了 Visual Studio 项目构建文件。
    • 向索引页面添加了搜索功能。
  • Functional/Hash 库: 修复了 points 示例。
  • 多索引容器库: 修复了多线程代码中的一个问题以及其他一些细微更改。有关更多详细信息,请参阅库的发行说明
  • 图库:
    • 修复了 x86 Linux 上的松弛堆问题(修复了dijkstra_shortest_paths 中的错误)。
    • 修复了cuthill_mckee_orderingking_ordering 产生无结果的问题。
    • dijkstra_shortest_paths 添加了color_map 参数。
  • Signals 库: 修复了跨共享库边界使用 Signals 时出现的问题。
  • 线程库:由于死锁问题,已删除read_write_mutex
  • Wave 库 (V1.2.1):修复了几个问题,有关更多详细信息,请参阅更改日志

支持的编译器

Boost 在各种编译器和平台上进行了测试。由于 Boost 库依赖于并非所有编译器都可用的现代 C++ 功能,因此并非所有 Boost 库都适用于所有编译器。以下编译器和平台已使用 Boost 进行了广泛测试,尽管许多其他编译器和平台也能正常工作。有关更多信息,请参阅回归测试结果

此版本的新增功能:添加了对使用最新的 STLport-5.0 进行构建的支持。此支持包括使用 MinGW Runtime 3.8 加上 STLport-5.0 进行构建,改进后支持宽字符操作。Apple GCC 4.0、HP Tru64 C++ 和 Microsoft Visual C++ 8.0 是受支持的平台。我们添加了一个类似 autoconf 的实验性configure用于类 Unix 系统的脚本:运行configure --help以了解更多信息。

  • Apple GCC 3.3、Mac OS X 上的 4.0。
  • Borland C++ Windows 上的 5.6.4。
  • GNU C++ Windows、Linux 和 Solaris 上的 2.95.3(带和不带 STLport)、3.2.x、3.3.x、3.4.x、4.0.x。
  • Intel C++ Windows、Linux 上的 8.1、9.0。
  • Metrowerks CodeWarrior Mac OS X 和 Windows 上的 8.3、9.4、9.5。
  • Microsoft Visual C++ 6.0(sp5,带和不带 STLport)、7.0、7.1、8.0。注意:Boost 不支持 Visual C++ 8.0 附带的非标准“安全”C++ 库,这可能会导致 Boost 头文件和其他符合标准的 C++ 代码出现许多虚假警告。要抑制这些警告,请定义宏_SCL_SECURE_NO_DEPRECATE

致谢

中世纪的 Gregor 先生 Douglas Gregor 负责此版本的管理。

许多人贡献了时间和专业知识,使这个版本的发布成为可能。特别感谢 Aleksey Gurtovoy 和 Misha Bergal,他们在整个发布过程中设法保持回归测试系统的运行;David Abrahams、Beman Dawes、Aleksey Gurtovoy、Bronek Kozicki、Rene Rivera 和 Jonathan Turkanis 极大地提高了此版本的质量;Rene Rivera 设计了新的 Boost 网页;以及 Zoltan “cad” Juhasz 设计了新的 Boost 徽标。