版本 1.37.0
版本 1.37.0
2008年11月3日 12:00 GMT
平台 | 文件 |
---|---|
unix | boost_1_37_0.tar.bz2 |
boost_1_37_0.tar.gz | |
windows | boost_1_37_0.7z |
boost_1_37_0.zip |
新库
-
Proto:
-
来自 Eric Niebler 的,用于特定领域嵌入式语言的表达式模板库和编译器构建工具包。
-
更新的库
-
Asio:
-
增强了 CompletionCondition 概念,其签名
size_t CompletionCondition(error_code ec, size_t total)
,其中返回值指示下一次读取或写入操作中要传输的最大字节数。(为了向后兼容,仍然支持旧的 CompletionCondition 签名)。 -
新的 windows::overlapped_ptr 类,允许将任意重叠 I/O 函数(例如 TransmitFile)与 Asio 一起使用。
-
在最新版本的 Linux 上,现在使用 eventfd 描述符(而不是管道)来中断阻塞的 select/epoll 反应器。
-
添加了 lowest_layer() 的 const 重载。
-
同步读取、写入、接受和连接操作现在是线程安全的(这意味着如果操作系统支持,现在允许在单个套接字上执行并发同步操作)。
-
基于反应器的 io_service 实现现在使用延迟初始化来减少仅用作消息队列的 io_service 对象的内存使用量。
-
-
循环缓冲区:
-
添加了新方法
is_linearized()
和rotate(const_iterator)
。 -
少量错误修复和文档更新。
-
-
动态位集:
-
构造函数 “做正确的事” 分派,类似于标准序列容器(遵循 library issue 438 的提议解决方案,目前在C++0x工作草案)。
-
文档、代码示例和实现的改进。
-
-
异常:
-
支持非 RTTI 构建。
-
优化。
-
一个新的宏
BOOST_THROW_EXCEPTION
可以用来代替boost::throw_exception
在抛出异常时,自动记录异常对象中抛出位置的信息。
-
-
哈希:
-
少量错误修复 (ticket 2264)。
-
-
进程间:
-
向容器添加了就地插入 (
emplace()
,emplace_back()
...) 方法。 -
容器现在可以在递归类型中使用。
-
少量错误修复。
-
-
侵入式:
-
侵入式现在利用了具有可变参数模板的编译器。
-
clone_from
函数现在复制关联容器的谓词和哈希函数。 -
通过
incremental<>
选项向无序容器添加了增量哈希。 -
少量错误修复。
-
-
Math.Special Functions: 改进了反超几何函数的精度和测试。
-
Type Traits: 增加了对 Codegear 编译器的更好支持。
测试的编译器
Boost 的主要测试编译器是
-
GCC 4.01 on Mac OS X 10.4.10 with both Intel and Power PC
-
GCC 4.2.4 on Ubuntu Linux 8.10
-
GCC 4.3.2 on Debian Sid
-
GCC 4.2.1 on HP-UX Integrity
-
HP C/aC++ B3910B A.06.17 on HP-UX 64-bit
-
Visual C++ 9.0 SP1, 8.0, and 7.1 SP1, all on Windows XP
Boost 的其他测试编译器包括
-
GCC 4.1.2 on NetBSD
-
HP aCC on OS: HP-UX B.11.31 U ia64 and HP-UX B.11.31 9000/800 RISC
-
IBM XL C/C++ Enterprise Edition for AIX, V10.1.0.0, on AIX Version 5.3.0.40
-
Intel 9.1, 10.0, and 10.1, on Mac OS X 10.4.10
-
Compaq C++ V7.1-006 for Compaq Tru64 Unix on an OSF1 V5.1 platform.
-
Sun C++ 5.7, 5.8, 5.9 and GCC 3.4.6 on Sun Solaris 5.10.
-
On Linux
-
GCC 3.4.3, 4.0.1, 4.2.1, 4.2.4, 4.3.2.
-
GCC 4.3.2 with C++0x extensions.
-
GCC 4.1.1, 4.2.1 on 64 bit linux.
-
Intel C++ 8.1, 9.0, 9.1 and 10.0
-
QLogic PathScale(TM) Compiler Suite: Version 3.1
-
Sun Compiler 5.9, 5.10 with stdcxx
-
-
On Windows
-
Several testers using Visual C++ 7.1, 8.0, 9.0 and 10.0
-
Visual C++ 7.1 with Apache C++ Standard Library 4.2.x branch.
-
Visual C++ 8.0 with STLport 5.1
-
Visual C++ 8.0 with STLport 5.1 cross-compiling for Windows Mobile 5.0 Pocket PC SDK (ARMV4I).
-
Intel 10.1, with Visual C++ 9 backend.
-
Borland 5.9.3 and 6.10.0
-
64 bit Intel 10.1, with Visual C++ 9 backend.
-
64 bit Visual C++ 9.0.
-
64-bit Visual C++ 9.0 with Apache C++ Standard Library 4.2.x branch.
-
Comeau C++ 4.3.10.1 beta 2, with Visual C++ 9 backend.
-
致谢
Beman Dawes, Eric Niebler, Rene Rivera, 和 Daniel James 管理了此版本。