版本 1.40.0
版本 1.40.0
2009 年 8 月 27 日 17:00 GMT
平台 | 文件 |
---|---|
unix | boost_1_40_0.tar.bz2 |
boost_1_40_0.tar.gz | |
windows | boost_1_40_0.7z |
boost_1_40_0.zip |
更新
为 Graph 和 Property Map 添加了缺失的注释。
Boost.CMake
Boost.CMake 现在是单独分发的。boost 的 cmake 构建在上面的 tarball 中是损坏的。请参阅 Boost.CMake wiki 页面 以获取指向工作版本的指针。
更新的库
-
Accumulators:
-
在 GCC 4.4 上工作。
-
-
Asio:
-
添加了一个新的 ping 示例来说明 ICMP 套接字的使用。
-
更改了
buffered*_stream<>
模板,将 0 字节的读取和写入视为无操作,以符合SyncReadStream
、AsyncReadStream
、SyncWriteStream
和AsyncWriteStream
的文档化类型要求。 -
使 Asio 与 OpenSSL 1.0 beta 兼容 (#3256)。
-
消除了 Solaris 中的冗余系统调用/dev/poll后端。
-
修复了内部哈希映射中 bucket 数组大小调整的错误 (#3095)。
-
确保在同步 accept 失败时正确传播错误代码 (#3216)。
-
确保在 Windows HANDLE 上的同步读取或写入失败时正确传播错误代码。
-
修复了定义
_GLIBCXX_DEBUG
时报告的失败 (#3098)。 -
修复了计时器的自定义内存分配支持 (#3107)。
-
-
Fusion:
-
改进了
fusion::vector
的编译时间。
-
-
Graph:
-
合并了 Parallel Boost Graph Library,为分布式内存计算机(如集群)提供了全套图算法和数据结构。
-
更新了压缩稀疏行图的接口,包括来自未排序边列表的构造函数。
-
一个隐式网格图,与以前的生成器相比,节省了内存。
-
新算法:Dijkstra 的单源最短路径算法(没有单独的颜色映射)和查找两个图之间最大公共子图的算法。
-
各种错误修复。
-
-
Hash:
-
使用模板元编程自动配置浮点函数,而不是尝试手动配置每种可能性。
-
-
Property Map:
-
将 property map 代码移动到单独的目录
boost/property_map/
中。旧文件仍然存在并转发到新文件;以前直接位于boost/
中的文件将在 Boost 1.42.0 中删除。 -
将分布式 property map 移动到
boost::graph::parallel
命名空间。 -
添加了基于
boost::shared_array
的 property map,提供了更简单的接口。
-
-
Random:
-
使所有生成器的构造函数在传递非 const 引用时调用复制构造函数。
-
更改了 seeding 函数以接受任何算术类型。作为副作用,某些类的 seed 的确切签名发生了变化。
-
uniform_int 中的主要错误修复。
-
-
Serialization:
-
移除了已弃用的头文件:
boost/static_warning.hpp
、boost/state_saver.hpp
、boost/smart_cast.hpp
、boost/pfto.hpp
。请改用boost/serialization/
目录中的等效头文件 (#3062)。
-
构建系统
类 Unix 环境中库的默认命名现在符合系统约定,并且不包含各种修饰。Cygwin 上库的命名也得到了修复。添加了对 Microsoft Visual Studio 10 beta 版本的支持。对于 gcc,64 位编译不再需要指定目标架构。
更新的工具
测试的编译器
Boost 的主要测试编译器是
-
OS X
-
Intel Tiger 和 Leopard 上的 GCC 4.0.1
-
PowerPC Tiger 上的 GCC 4.0.1
-
-
Linux
-
Ubuntu Linux 上的 GCC 4.3.3。
-
-
Windows
-
Windows XP 上的 Visual C++ 7.1 SP1、8.0 SP1 和 9.0 SP1。
-
Boost 的其他测试编译器包括
-
Linux
-
Red Hat Enterprise Linux 上的 Intel 9.0。
-
Red Hat Enterprise Linux 上的 Intel 10.0。
-
64 位 Linux Redhat 5.1 Server 上的 Intel 10.1。
-
64 位 Itanium 上的 Suse Linux 上的 Intel 10.1。
-
Red Hat Enterprise Linux 上的 Intel 11.0。
-
Red Hat Enterprise Linux 上的 Intel 11.1。
-
Red Hat Enterprise Linux 上的 GCC 3.4.3、GCC 4.0.1、GCC 4.2.4、GCC 4.3.3 和 GCC 4.4.0。
-
Red Hat Enterprise Linux 上具有 C++0x 扩展的 GCC 4.3.3 和 GCC 4.4.0。
-
64 位 Red Hat Enterprise Linux 上的 GCC 4.1.1、4.2.1。
-
64 位 Itanium 上的 Suse Linux 上的 GCC 4.1.2。
-
64 位 Redhat Server 5.1 上的 GCC 4.1.2。
-
Red Hat Enterprise Linux 上的 GCC Open64 4.2.2。
-
Debian unstable 上的 GCC 4.3.4。
-
Red Hat Enterprise Linux 上的 QLogic PathScale(TM) Compiler Suite: Version 3.1。
-
64 位 Red Hat Enterprise Linux 上的 GCC version 4.2.0 (PathScale 3.2 driver)。
-
Red Hat Enterprise Linux 上的 Sun 5.9。
-
-
OS X
-
Intel Leopard 上的 Intel 10.1、11.0。
-
Intel Tiger 上的 Intel 10.1、11.0。
-
Intel Leopard 上的 GCC 4.0.1、4.2.1。
-
Intel Tiger 上的 GCC 4.0.1。
-
PowerPC Tiger 上的 GCC 4.0.1。
-
-
Windows
-
XP 上的 Visual C++ 7.1。
-
XP 上的 Visual C++ 9.0。
-
Vista 上的 Visual C++ 9.0。
-
64 位 Vista 上的 Visual C++ 9.0。
-
XP 和 Windows Mobile 5.0 上使用 STLport 5.2 的 Visual C++ 9.0。
-
Visual C++ 10.0 beta。
-
Borland 5.9.3、6.1.0、6.1.3。
-
Borland C++ Builder 2007 和 2009。
-
Vista 32 位上带有 Visual C++ 9.0 后端的 Intel C++ 11.1。
-
Vista 64 位上带有 Visual C++ 9.0 后端的 Intel C++ 11.1。
-
Mingw 上具有 C++0x 功能的 GCC 4.3.3 和 4.4.0。
-
-
AIX
-
AIX Version 5.3.0.40 上的 IBM XL C/C++ Enterprise Edition for AIX, V10.1.0.0。
-
-
Solaris
-
Solaris 5.10 上的 Sun C++ 5.7、5.8、5.9。
-
Solaris 5.10 上的 GCC 3.4.6。
-
致谢
Beman Dawes、Eric Niebler、Rene Rivera 和 Daniel James 管理了此版本。