版本 1.44.0
版本 1.44.0
2010年8月13日 17:00 GMT
平台 | 文件 |
---|---|
Unix | boost_1_44_0.tar.bz2 |
boost_1_44_0.tar.gz | |
Windows | boost_1_44_0.7z |
boost_1_44_0.zip |
新增库
更新库
-
累加器:
-
修正各种文档中的错误。
-
-
Asio:
-
减少编译时间。(请注意,某些程序可能需要添加额外的
#include
,例如,如果程序使用boost::array
但没有显式包含<boost/array.hpp>
。) -
减少生成代码的大小。
-
重构
deadline_timer
实现以提高性能。 -
通过使用专用的隐藏线程来等待计时器,提高了 Windows 上的多处理器可伸缩性。
-
改进了
asio::streambuf
与async_read()
和async_read_until()
的性能。这些读取操作现在在读取时使用streambuf
的现有容量,而不是将读取限制为 512 字节。 -
添加了可选的单独编译。要启用,请在程序的一个源文件中添加
#include <boost/asio/impl/src.cpp>
,然后在项目/编译器设置中定义BOOST_ASIO_SEPARATE_COMPILATION
来构建程序。或者,可以定义BOOST_ASIO_DYN_LINK
以将单独编译的 Asio 构建为共享库的一部分。 -
添加了新的宏
BOOST_ASIO_DISABLE_FENCED_BLOCK
,即使启用了线程支持,也可以禁用完成处理程序周围的内存栅栏。 -
重新编写了超时示例,以更好地说明典型的用例。
-
确保处理程序参数作为
const
类型传递。 -
修复了处理非常小但非零超时的问题(#4205)。
-
修复了将空缓冲区序列传递给组合读取或写入操作时发生的崩溃。
-
实现了在 Windows 上取消
null_buffers
操作。
-
-
哈希:
-
通过定义宏
BOOST_HASH_NO_IMPLICIT_CASTS
来防止在调用哈希函数时进行隐式转换的选项,这可以避免一些细微的问题。将来版本中可能会默认激活此选项。
-
-
数学:
-
修复了瑞利分布的不正确范围和支持。
-
-
MPL:
-
使
mpl::string
可以与mpl::transform
一起使用。
-
-
TR1:
-
修复了 VC10 支持。
-
即使在支持基于 C++0x
decltype
实现的编译器上,std::tr1::result_of
也始终使用 TR1 ResultOf 协议。
-
-
实用程序:
-
添加了一个新的模板类
boost::initialized<T>
,以修复 #3472。 -
新的模板
boost::tr1_result_of
实现了 TR1 ResultOf 协议,即使boost::result_of
使用基于 C++0xdecltype
的实现。
-
-
Uuid:
-
定义
BOOST_UUID_NO_TYPE_TRAITS
以移除对 Boost.TypeTraits 的依赖。 -
流
operator<<
处理左、内部和右操作符。 -
添加了
to_string
、to_wstring
将 uuid 转换为字符串。 -
修复了文档中的小错误。
-
-
Xpressive:
-
在
nested_results
中用typedef
替换不可移植的using
声明。 -
支持针对非局部变量使用占位符的用户定义断言。
-
更新的工具
-
Boostbook:
-
速度显著提高。
-
改进了语法高亮显示。
-
测试过的编译器
Boost 的主要测试编译器是
-
OS X
-
Intel Leopard 上的 GCC 4.0.1。
-
-
Linux
-
64 位 Suse 上的 GCC 4.4。
-
-
Windows
-
Visual C++ 7.1 SP1、8.0 SP1、9.0 SP1 和 10.0。
-
使用 Mingw 的 GCC 4.3.3。
-
-
FreeBSD
-
GCC 4.2.1,32 位和 64 位。
-
Boost 的其他测试编译器包括
-
Linux
-
32 位 Red Hat Enterprise Linux 上的 Intel 10.1。
-
64 位 Red Hat Enterprise Linux 上的 Intel 10.1、11.0、11.1。
-
Red Hat Enterprise Linux 上的 GCC 3.4.6、4.2.4、4.3.4、4.4.3、4.5。
-
Red Hat Enterprise Linux 上的 GCC(带 C++0x 扩展),4.3.4、4.4.3、4.5。
-
64 位 Suse 上的 GCC 4.4。
-
Red Hat Enterprise Linux 上的 QLogic PathScale(TM) 编译器套件:版本 3.2。
-
来自 Subversion 的 Clang(将与 LLVM 2.8 一起发布)。
-
-
OS X
-
Leopard 上的 Intel C++ 编译器 10.1、11.0、11.1。
-
GCC 4.0.1、4.2.1(Apple 构建)。
-
GCC 4.4
-
GCC(带 C++0x 扩展),4.4
-
来自 Subversion 的 Clang(将与 LLVM 2.8 一起发布)。
-
-
Windows
-
32 位 XP 上的 Visual C++ 7.1 SP、8.0、9.0。
-
XP 和 Windows Mobile 5.0 上使用 STLport 5.2 的 Visual C++ 9.0。
-
XP 上的 Visual C++ 10.0。
-
64 位 Windows 7 上的 Visual C++ 10.0。
-
Borland/Codegear C++ 5.9.3、6.1.3 (2009)、6.2.1 (2010)。
-
Vista 32 位上使用 Visual C++ 9.0 后端的 Intel C++ 11.1。
-
Mingw 上的 GCC 4.3.3、4.5。
-
Mingw 上的 GCC(带 C++0x 扩展),4.5。
-
-
AIX
-
AIX 版本 5.3.0.40 上的 IBM XL C/C++ Enterprise Edition,V11.1.0.0。
-
-
FreeBSD
-
FreeBSD 7.2(64 位)上的 GCC 4.2.1。
-
FreeBSD 8.0(32 位)上的 GCC 4.2.1。
-
-
Solaris
-
Solaris 5.10 上的 Sun C++ 5.10。
-
致谢
Beman Dawes、Eric Niebler、Rene Rivera、Daniel James 和 Vladimir Prus 管理了此版本。
感谢 Marshall Clow 组织了 bug sprint 以及所有参与的人。