租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

C++ uniform_int_distribution离散均匀分布类用法详解

发布时间:2023-09-18 08:50:51

C++ uniform_int_distribution离散均匀散布类用法详解

C++的uniform_int_distribution是一个离散均匀散布的类,用于生成指定范围内的随机整数。
uniform_int_distribution的用法以下:
1. 援用头文件
首先要援用头文件。
```cpp
#include
```
2. 创建随机数引擎
uniform_int_distribution需要一个随机数引擎来生成随机数。可使用默许的随机数引擎std::default_random_engine,也能够使用其他的随机数引擎。
```cpp
std::default_random_engine generator;
```
3. 创建uniform_int_distribution对象
uniform_int_distribution的模板参数是要生成的随机数的类型,如int、unsigned int等。
```cpp
std::uniform_int_distribution distribution(min_value, max_value);
```
其中min_value和max_value是生成随机数的范围。
4. 生成随机数
使用uniform_int_distribution的成员函数operator()来生成随机数。
```cpp
int random_number = distribution(generator);
```
这样就能够生成一个范围在min_value和max_value之间的随机整数。
下面是一个完全的例子:
```cpp
#include
#include
int main() {
std::default_random_engine generator;
std::uniform_int_distribution distribution(1, 6);
for (int i = 0; i < 10; ++i) {
int random_number = distribution(generator);
std::cout << random_number << " ";
}
return 0;
}
```
输出结果可能为:4 2 5 1 6 3 6 5 2 4,这是10个范围在1到6之间的随机整数。