Namespaces
Variants
Views
Actions

std::shuffle_order_engine

From cppreference.com
< cpp‎ | numeric‎ | random
Revision as of 23:27, 5 May 2023 by Andreas Krug (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
 
 
 
 
 
Defined in header <random>
template<

    class Engine,
    std::size_t K

> class shuffle_order_engine;
(since C++11)

shuffle_order_engine is a random number engine adaptor that shuffles the random numbers generated by the base engine. It maintains a table of size K and delivers a randomly selected number from that table when requested, replacing it with a number generated by the base engine.

The following typedef defines the random number engine with one commonly used parameter set:

Defined in header <random>
Type Definition
knuth_b (C++11) std::shuffle_order_engine<std::minstd_rand0, 256>[edit]

Contents

[edit] Template parameters

Engine - the type of the wrapped engine
K - the size of the internal table. Must be greater than 0.
Type requirements
-
Engine must meet the requirements of RandomNumberEngine.

[edit] Member types

Member type Definition
result_type (C++11) Engine::result_type

[edit] Member functions

constructs the engine adaptor
(public member function) [edit]
(C++11)
sets the state of the underlying engine
(public member function) [edit]
(C++11)
returns the underlying engine
(public member function) [edit]
Generation
advances the state of the underlying engine and returns the generated value
(public member function) [edit]
(C++11)
advances the adaptor's state by a specified amount
(public member function) [edit]
Characteristics
[static] (C++11)
gets the smallest possible value in the output range of the underlying engine.
(public static member function) [edit]
[static] (C++11)
gets the largest possible value in the output range of the underlying engine.
(public static member function) [edit]

[edit] Non-member functions

(C++11)(C++11)(removed in C++20)
compares the internal states of the adaptors and underlying engines
(function) [edit]
performs stream input and output on pseudo-random number engine adaptor
(function) [edit]

[edit] Member objects

constexpr size_t table_size
[static] (C++11)
the size of the internal table, K
(public static member constant)

[edit] Example