std::experimental::reseed

定义于头文件 <experimental/random>
void reseed();
(1) (库基础 TS v2)
void reseed(std::default_random_engine::result_type value);
(2) (库基础 TS v2)

重播种逐线程随机数引擎randint 所用的任何 std::uniform_int_distribution 实例。

1) 设置逐线程引擎为不可预测状态。
2) 如同用 g.seed(value) 播种逐线程引擎 g

参数

value - 新种子的值

提醒

randint 的后继调用不依赖于调用 reseed 之前的逐线程引擎所产生的值。

示例

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

可能的输出:

Random 2-digit decimal numbers: 41 60 56

参阅

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