用 boost_random_device 播种 boost::random_generator

Seeding boost::random_generator with boost_random_device

我想用真随机数为 boost::random_generator 播种。我知道随机设备是一个非确定性随机数生成器。最好的方法是什么?有可能吗?如果我不能直接这样做,我可以将它传递给 boost::mt19937 吗?

所以只是跟进这个。我很确定这是可能的。经过大量研究,我发现随机设备是随机中仅有的 non-header 个库之一,因此需要对其进行编译。

然而,我并没有最终使用随机设备。相反,我选择了以下播种方法:

randomNumberGenerator.seed(boost::chrono::duration_cast<boost::chrono::nanoseconds>(boost::chrono::high_resolution_clock::now().time_since_epoch()).count());
boost::uuids::detail::seed(randomNumberGenerator);

其中 randomNumberGenerator 的类型为 boost::mt19937

希望对您有所帮助!!