类模板
<random>
std::shuffle_order_engine
template <class Engine, size_t k> class shuffle_order_engine;
洗牌顺序随机数引擎适配器 (Shuffle-order random number engine adaptor)
一个引擎适配器类模板,它适配一个伪随机数生成器Engine类型,以便数字以不同的顺序提供。
该对象在内部维护一个包含k个生成数字的缓冲区,并在被请求时,返回缓冲区中的一个随机选择的数字,并用从其base引擎获得的数值替换它。
模板参数
- 引擎
- 一个随机数引擎类型。所有标准生成器,除了random_device,都是随机数引擎类型。
- k
- 表大小:缓冲区表中的元素数量。
此参数应大于零。
size_t 是一个无符号整数类型。
成员类型
以下别名是...的成员类型独立比特引擎 (independent_bits_engine):
成员类型 | 定义 | 说明 |
result_type | Engine::result_type | 生成的数字的类型。 |
成员函数
- (构造函数)
- 构造 shuffle-order 引擎 (公共成员函数)
- min
- 最小值 (公共静态成员函数)
- max
- 最大值 (公共静态成员函数)
- seed
- 种子基础引擎 (公共成员函数)
- operator()
- Generate random number (public member function) (生成随机数 (公共成员函数))
- discard (丢弃)
- Advance internal state (public member function) (推进内部状态 (公共成员函数))
- base
- 返回基引擎 (public member function)
非成员函数
- operator>>
- 从输入流提取 (Extract from input stream) (function template)
- operator<<
- 插入到输出流 (函数模板)
- 关系运算符
- 关系运算符 (函数模板)
成员常量
成员常量 | 定义 | 说明 |
table_size | 第二个模板参数 (k) | 缓冲区表的大小。 |