📅  最后修改于: 2023-12-03 15:29:54.056000             🧑  作者: Mango
C++中的std :: uniform_int_distribution类是一个实用类,用于生成指定范围内的均匀分布的随机整数。
下面是一个示例,说明如何使用std :: uniform_int_distribution类来生成随机整数:
#include <iostream>
#include <random>
int main()
{
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(1, 10);
for (int i = 0; i < 10; ++i) {
std::cout << dis(gen) << ' ';
}
std::cout << '\n';
return 0;
}
该程序使用std :: random_device类生成一个随机种子,然后使用该种子初始化一个std :: mt19937引擎。接着,我们声明一个std :: uniform_int_distribution对象来生成1到10之间的整数,并使用该引擎来生成实际的随机数。
以下是std :: uniform_int_distribution类的方法:
explicit uniform_int_distribution(IntType a = 0, IntType b = std::numeric_limits<IntType>::max());
result_type operator()(Generator& g);
result_type operator()(Generator& g, const param_type& params);
以下是std :: uniform_int_distribution类的参数和返回值: