命名空间
变体
操作

std::experimental::reseed

来自 cppreference.cn
定义于头文件 <experimental/random>
void reseed();
(1) (library fundamentals TS v2)
void reseed( std::default_random_engine::result_type value );
(2) (library fundamentals TS v2)

重置每线程随机数引擎以及 std::uniform_int_distribution 的实例,这些实例被 randint 使用。

1) 将每线程引擎设置为不可预测的状态。
2) 种子化每线程引擎 g,如同通过 g.seed(value)

目录

[edit] 参数

value - 新种子的值

[edit] 注解

后续对 randint 的调用不依赖于调用 reseed 之前每线程引擎产生的值。

[edit] 示例

#include <experimental/random>
#include <iostream>
 
int main()
{
    std::experimental::reseed();
 
    std::cout << "Random 2-digit decimal numbers: ";
 
    for (auto i = 0; i != 3; ++i)
        std::cout << std::experimental::randint(10, 99) << ' ';
    std::cout << '\n';
}

可能的输出

Random 2-digit decimal numbers: 41 60 56

[edit] 参见

在指定范围内生成随机整数
(函数模板) [edit]