问问题
4349 次
3 回答
4
是的,从GCC 5开始,但在GCC 7之前,它位于std::experimental
命名空间中并在标头中定义<experimental/algorithm>
。
来自 GCC 5 发行说明:
运行时库 (libstdc++)
改进了对 Library Fundamentals TS 的实验性支持,包括:
- 函数模板 std::experimental::sample;
在 GCC 5.1 上测试https://wandbox.org/permlink/HWnX3qSgKbZO2qoH
于 2018-09-11T12:40:24.390 回答
3
不,我们可以从“Library Fundamentals V1 TS Components: Sampling”下的文档中的表格中看到,最早支持的 libstdc++std::sample
版本是 7.1 版
于 2018-09-10T22:37:24.343 回答
1
gcc 6 是否支持使用 std::sample?
不,您需要 GCC 7。来自GCC 7 发行说明:
对 C++17 的实验性支持,包括以下新功能:
...
std::sample、std::default_searcher、std::boyer_moore_searcher 和 std::boyer_moore_horspool_searcher;
对于 GCC 7,您可能需要-std=c++1z
或者-std=gnu++1z
因为它是实验性的。
于 2018-09-10T23:05:10.843 回答