版本 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)
。 -
小的错误修复和文档更新。
-
-
异常:
-
支持非 RTTI 构建。
-
优化。
-
一个新的宏
BOOST_THROW_EXCEPTION
,可以在抛出时使用它来代替boost::throw_exception
,以自动记录有关异常对象中抛出位置的信息。
-
-
哈希:
-
小的错误修复(ticket 2264)。
-
-
进程间:
-
向容器添加了就地插入 (
emplace()
,emplace_back()
...) 方法。 -
容器现在可以用于递归类型。
-
小的错误修复。
-
-
侵入式:
-
侵入式现在利用具有可变参数模板的编译器。
-
clone_from
函数现在复制关联容器的谓词和哈希函数。 -
通过
incremental<>
选项向无序容器添加了增量哈希。 -
小的错误修复。
-
-
数学.特殊函数:改进了反超几何函数的准确性和测试。
-
类型特征:增加了对 Codegear 编译器的更好支持。
测试的编译器
Boost 的主要测试编译器是
-
在 Mac OS X 10.4.10 上使用 Intel 和 Power PC 的 GCC 4.01
-
在 Ubuntu Linux 8.10 上的 GCC 4.2.4
-
在 Debian Sid 上的 GCC 4.3.2
-
在 HP-UX Integrity 上的 GCC 4.2.1
-
在 HP-UX 64 位上的 HP C/aC++ B3910B A.06.17
-
Visual C++ 9.0 SP1、8.0 和 7.1 SP1,全部在 Windows XP 上
Boost 的其他测试编译器包括
-
在 NetBSD 上的 GCC 4.1.2
-
在 OS:HP-UX B.11.31 U ia64 和 HP-UX B.11.31 9000/800 RISC 上的 HP aCC
-
用于 AIX 的 IBM XL C/C++ Enterprise Edition,V10.1.0.0,在 AIX 版本 5.3.0.40 上
-
在 Mac OS X 10.4.10 上的 Intel 9.1、10.0 和 10.1
-
在 OSF1 V5.1 平台上的 Compaq Tru64 Unix 的 Compaq C++ V7.1-006。
-
在 Sun Solaris 5.10 上的 Sun C++ 5.7、5.8、5.9 和 GCC 3.4.6。
-
在 Linux 上
-
GCC 3.4.3、4.0.1、4.2.1、4.2.4、4.3.2。
-
具有 C++0x 扩展的 GCC 4.3.2。
-
在 64 位 linux 上的 GCC 4.1.1、4.2.1。
-
Intel C++ 8.1、9.0、9.1 和 10.0
-
QLogic PathScale(TM) 编译器套件:版本 3.1
-
带有 stdcxx 的 Sun 编译器 5.9、5.10
-
-
在 Windows 上
-
使用 Visual C++ 7.1、8.0、9.0 和 10.0 的多个测试人员
-
带有 Apache C++ 标准库 4.2.x 分支的 Visual C++ 7.1。
-
带有 STLport 5.1 的 Visual C++ 8.0
-
带有 STLport 5.1 的 Visual C++ 8.0 交叉编译,用于 Windows Mobile 5.0 Pocket PC SDK (ARMV4I)。
-
Intel 10.1,带有 Visual C++ 9 后端。
-
Borland 5.9.3 和 6.10.0
-
64 位 Intel 10.1,带有 Visual C++ 9 后端。
-
64 位 Visual C++ 9.0。
-
带有 Apache C++ 标准库 4.2.x 分支的 64 位 Visual C++ 9.0。
-
Comeau C++ 4.3.10.1 beta 2,带有 Visual C++ 9 后端。
-
鸣谢
Beman Dawes、Eric Niebler、Rene Rivera 和 Daniel James 管理了此版本。