版本 1.62.0
版本 1.62.0
2016 年 9 月 28 日 15:17 格林尼治标准时间
平台 | 文件 | SHA256 哈希值 |
---|---|---|
Unix | boost_1_62_0.tar.bz2 | 36c96b0f6155c98404091d8ceb48319a28279ca0333fba1ad8611eb90afb2ca0 |
boost_1_62_0.tar.gz | 440a59f8bc4023dbe6285c9998b0f7fa288468b889746b1ef00e8b36c559dce1 | |
Windows | boost_1_62_0.7z | b91c2cda8bee73ea613130e19e72c9589e9ef0357c4c5cc5f7523de82cce11f7 |
boost_1_62_0.zip | 084b2e0638bbe0975a9e43e21bc9ceae33ef11377aecab3268a57cf41e405d4e |
第三方下载
新增库
更新的库
-
Atomic:
-
改进了对 Oracle Studio 和 SPARC 的支持。该库现在在 SPARCv8+ 上提供本地原子操作。
-
-
循环缓冲区 (Circular Buffer):
-
调试模式下不再默认使用调试实现。调试实现没有与普通(发布)实现或其他容器相同的线程安全保证。由于此更改,
BOOST_CB_DISABLE_DEBUG
宏不再使用。应改为定义BOOST_CB_ENABLE_DEBUG=1
来启用调试支持。(#6277)
-
-
容器 (Container):
-
修复的错误
-
Trac #12273:“static_vector max_size() 和 capacity() 应为常量表达式”。添加了常量
static_vector<>::static_capacity
以在常量表达式中使用配置的容量。
-
修改了所有容器中默认和移动构造函数的 noexcept 表达式。
-
为
map
和flat_map
实现了 C++17insert_or_assign
/try_emplace
。 -
为
map
、multimap
、set
、multiset
实现了 C++17extract
/insert(node)
。
-
-
协程 (Coroutine):
-
已弃用,推荐使用 Coroutine2
-
-
Coroutine2:
-
#12221 coroutine<>::push_type 函数在未推送的情况下启动
-
不要吞没在 coroutine<>::push_type 构造中抛出的异常
-
-
DLL:
-
由 Klemens Morgenstern 实现混淆符号和类加载
-
抑制 detail::aggressive_ptr_cast 中的“未使用参数”警告 pull-request 9
-
允许查询不存在的部分 pull-request 32
-
更多测试和文档
-
-
Functional/Forward:
-
修复 C++11 编译错误。
-
-
Intrusive:
-
修复的错误
-
-
Lexical Cast:
-
修复不正确的静态断言 #11759
-
-
Math:
-
新功能
-
使所有特殊函数代码都能正确地与精度可以在运行时更改的类型一起工作:例如来自 Boost.Multiprecision 的类型
mpfr_float
。
-
-
补丁
-
修复了当增量与基数相比很小时
tgamma_delta_ratio
的问题。 -
修复了其他 GCC-4.4 测试失败。
-
-
-
Optional:
-
修复了 Trac #12179。
-
-
Phoenix:
-
修复 MSVC 10 的编译问题。 pull-request 18
-
删除未使用的预处理文件。 pull-request 28
-
修复 switch_ 语句的错误文档。 #8156
-
清理配置 unordered。 pull-request 33
-
抑制未使用的占位符警告。
-
修复二元数学函数的参数过少错误。
-
-
Thread:
-
#12102 禁用 BOOST_THREAD_PROVIDES_INTERRUPTIONS 时,condition_variable_fwd.hpp 无法编译
-
#12120 thread/barrier.hpp 的性能改进
-
#12146 文档中未提及 make_exceptional_future
-
#12202 shared_lock 应位于 shared_mutex 头文件中
-
#12371 boost thread/future.hpp 无法构建
-
#88 修复 boost::upgrade_lock 中的错别字
-
#89 修复 upgrade_to_unique_lock<>::operator=() 中的错误
-
#90 修复 try_lock_wrapper<>::operator=() 中的错误
-
#91 将 shared_lock_guard 添加到包含的锁类型中
-
#92 修复了与 MSVC-8 的编译问题。
-
#93 修复变量隐藏警告 (Clang)
-
#94 修复 boost::barrier 中的错误
-
#95 修复 boost::completion_latch 中的错误
-
#96 将 async_func.hpp 重命名为 invoker.hpp。
-
#97 修复 sync_timed_queue<>::pull_until() 中的错误
-
-
TypeIndex:
-
ctti_type_index
在 C++14 中被设为 constexpr。现在可以在编译时将类型的实际名称作为const char*
获取。因此,我们可以在**编译时**做很多有趣的事情:检查类型的命名空间,根据它们的词法表示对类型进行排序,检查类型是否为模板类型等等……提供了一些示例。 -
修复了 MSVC 中类型名称的
noexcept
问题和类型名称中空格的问题(从 klemens-morgenstern/develop 中提取) -
修复了错别字 pull-request 7
-
改进了 CI 测试
-
测试编译器
Boost的主要测试编译器是:
-
Linux
-
Clang: 3.0, 3.8.0
-
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8.0
-
Clang, C++14: 3.5, 3.6, 3.7, 3.8.0, 3.8.1, 3.9.0
-
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.2.0, 6.1.1
-
GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.3, 5.2.0, 6.1.1
-
GCC, C++14: 5.2.0, 5.3.0, 5.4.1, 6.1.1
-
Intel: 16.0
-
Intel, C++11: 16.0
-
Intel, C++14: 16.0
-
-
Windows
-
GCC, C++03, mingw: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0
-
GCC, C++11, mingw: 4.6.4, 4.7.3, 4.8.1
-
GCC, C++14, mingw: 6.1.0
-
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0
-
-
Android
-
Clang: 3.6, 3.7, 3.8
-
GCC: 4.9, 5.4, 6.1
-
-
FreeBSD
-
Clang: 3.4.1, 3.7
-
GCC: 4.8.5, 5.4.0, 6.1.1
-
-
QNX
-
QCC: 4.4.2
-
-
SunOS
-
Oracle Solaris Studio: 12.5
-
Oracle Solaris Studio, C++11: 12.5
-
Boost的其他测试编译器包括:
-
Linux
-
Clang: 3.0, 3.8
-
Clang, c++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8
-
Clang, c++14: 3.5, 3.6, 3.7, 3.8, 3.9
-
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 4.8.4, 5.2.0, 6.1.1
-
GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.3, 5.2.0, 6.1.1
-
GCC, C++14: 5.2.0, 5.3.0, 5.4.1, 6.1.1, 7.0.0 (实验性)
-
Intel: 16.0
-
Intel, C++11: 16.0
-
Intel, C++14: 16.0
-
-
OS X
-
Apple Clang: 7.3.0
-
G++: 6.1.0
-
-
Windows
-
Clang: 3.8.1
-
GCC, C++03, mingw: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0
-
GCC, C++11, mingw: 4.6.4, 4.7.3, 4.8.1
-
GCC, C++14, mingw: 4.9.3, 5.1.0, 5.2.0, 5.3.0, 6.1.0
-
GCC, cygwin: 5.4.0
-
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0
-
-
Android
-
Clang: 3.6, 3.7, 3.8
-
GCC: 4.9, 5.4, 6.1
-
-
FreeBSD
-
Clang, C++11: 3.4.1, 3.7.0
-
GCC, C++11: 4.8.5, 5.4.0, 6.1.1
-
-
Haiku
-
GCC, C++11: 5.4.0
-
-
QNX
-
QCC: 4.4.2
-
-
SunOS
-
Oracle Solaris Studio: 12.5
-
Oracle Solaris Studio, C++11: 12.5
-
致谢
Beman Dawes,Eric Niebler,Rene Rivera,Daniel James,Vladimir Prus和Marshall Clow负责此次发布。