std::shuffle_order_engine

来自cppreference.com
< cpp‎ | numeric‎ | random
 
 
 
 
std::shuffle_order_engine
 
定义于头文件 <random>
template<

    class Engine,
    std::size_t K

> class shuffle_order_engine;
(C++11 起)

shuffle_order_engine 是随机数引擎适配器,它打乱基础引擎生成的随机数。它维护一个大小为 K 的表,并在请求时随机地从该表派送被选择数,将它替换为基础引擎生成的数。

下列 typedef 定义拥有常用参数集的随机数引擎:

定义于头文件 <random>
类型 定义
knuth_b(C++11) std::shuffle_order_engine<std::minstd_rand0, 256>

模板形参

Engine - 包装的引擎类型
K - 内部表大小。必须大于 0
类型要求
-
Engine 必须满足随机数引擎 (RandomNumberEngine) 的要求。

成员类型

成员类型 特征
result_type Engine::result_type

成员函数

构造引擎适配器
(公开成员函数)
(C++11)
设置底层引擎的状态
(公开成员函数)
(C++11)
返回底层引擎
(公开成员函数)
生成
令底层引擎的状态前进并返回生成的值
(公开成员函数)
(C++11)
令适配器状态前进指定量
(公开成员函数)
特征
[静态] (C++11)
获取底层引擎输出范围中的最小可能值。
(公开静态成员函数)
[静态] (C++11)
获取底层引擎输出范围中最大的可能值。
(公开静态成员函数)

非成员函数

(C++11)(C++11)(C++20 中移除)
比较适配器和底层引擎的内部状态
(函数)
在伪随机数引擎适配器上进行流输入和输出
(函数)

成员对象

constexpr size_t table_size
[静态]
内部表大小 K
(公开静态成员常量)