生成没有srand的随机数

时间:2015-11-28 11:36:40

标签: c++ random

我需要用srand生成一个随机数。我用过:

std::default_random_engine generator;
std::uniform_int_distribution<int> distribution(1,6);
int dice_roll = distribution(generator);  // generates number in the range 1..6 

但它一直生成相同的数字。

1 个答案:

答案 0 :(得分:1)

使用随机设备从运行时(来自操作系统)获取随机初始化

std::random_device rand_dev;
std::default_random_engine generator(rand_dev());

注意,也可以选择自己的种子:

std::default_random_engine generator(3752);