随机数的实现

发布时间 2023-04-22 12:33:48作者: WAASSTT

针对使用随机数,每次可能出现相同的数,采用以下相对较好的实现方法

  • 第1行和第2行是头文件,分别包含了输入输出流和随机数相关的库函数。
  • 第4行调用random_device函数创建一个真正的随机数生成器rd,用于生成种子。
  • 第5行使用mt19937引擎生成器gen,将上面生成的随机数作为种子。这里使用了Mersenne Twister 19937算法生成器。
  • 第8行创建了一个uniform_int_distribution对象dis,表示生成[1,65535]之间的均匀分布整数。
  • 第9~13行使用for循环生成5个随机整数,并输出到屏幕上。
#include <iostream>
#include <random>

int main()
{
    // 设置种子
    std::random_device rd;
    std::mt19937 gen(rd());

    // 生成随机整数
    std::uniform_int_distribution<> dis(1, 65535);
    for (int i = 0; i < 5; ++i) {
        std::cout << dis(gen) << " ";
    }

    return 0;
}