std::seed_seq::param

来自cppreference.com
< cpp‎ | numeric‎ | random‎ | seed seq
 
 
 
 
 
template< class OutputIt >
void param( OutputIt dest ) const;
(C++11 起)

将存储的种子复制到从 dest 开始的范围。等价于 std::copy(v .begin(), v .end(), dest);

如果 result_type 类型的值不可写入 dest,那么程序非良构。

如果 OutputIt 不满足老式输出迭代器 (LegacyOutputIterator) 的要求,那么行为未定义。

目录

[编辑] 参数

dest - 输出范围的起始迭代器

[编辑] 异常

只会抛出在 dest 上的操作抛出的异常。

[编辑] 示例

#include <iostream>
#include <iterator>
#include <random>
 
int main()
{
    std::seed_seq s1 = {-1, 0, 1};
    s1.param(std::ostream_iterator<int>(std::cout, " "));
}

输出:

-1 0 1

[编辑] 缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 出版时的行为 正确行为
LWG 2180 C++11 seed_seq::param 不会抛出异常 它可以抛出异常