发行说明 - Boost C++ 函数库
- 添加了
boost::variant_collection,这是一个封闭的多态集合,其行为类似于 std::vector<std::variant<...>>。
- 修复了
boost::type_erasure::any 和 boost::any 之间的内部歧义问题(问题 #17)。
- 维护工作。
- 抑制了
boost::poly_collection::for_each 中潜在的冗余移动警告。
- 修复了一个 bug,该 bug 在具有非传播、不等分配器的集合之间的分配器扩展移动构造和移动赋值中,元素被复制而非移动。
- 对于 GCC 4.8 随附的 libstdc++-v3 的旧版本(也可由 Clang 使用),分配器扩展移动构造不再退化为分配器扩展复制构造。
- 在 Billy O'Neal 报告的错误(PR#9)之后,改进了对有状态分配器和分配器传播特性的处理。
- 修复了内部缓存结构中一个潜在的严重 bug。
- 为
std::for_each_n 和 std::sample 算法添加了 Boost.PolyCollection 特定的版本。
- Boost.PolyCollection 已向后移植到 GCC 4.8 至 4.9 和 Clang 3.3 至 3.6。GCC 4.8 随附的 libstdc++-v3 版本(也可由 Clang 使用)存在缺陷,在使用 Boost.PolyCollection 时会导致以下限制:
- 有状态分配器不支持。
- 分配器扩展移动构造退化为分配器扩展复制构造。
- 如果元素复制过程中抛出异常,则复制构造会崩溃。
- 维护修复。