Namespaces
Variants

std::experimental:: reseed

From cppreference.net
定义于头文件 <experimental/random>
void reseed ( ) ;
(1) (库基础技术规范 v2)
void reseed ( std :: default_random_engine :: result_type value ) ;
(2) (库基础技术规范 v2)

重新播种 每线程随机数引擎 以及被 randint 使用的所有 std::uniform_int_distribution 实例。

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

目录

参数

value - 新种子的值

备注

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

示例

#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

参见

生成指定范围内的随机整数
(函数模板)