std::shuffle_order_engine
From cppreference.com
Defined in header <random> | ||
template< class 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> |
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
(C++11) | constructs the engine adaptor (public member function) |
(C++11) | sets the state of the underlying engine (public member function) |
(C++11) | returns the underlying engine (public member function) |
Generation | |
(C++11) | advances the state of the underlying engine and returns the generated value (public member function) |
(C++11) | advances the adaptor's state by a specified amount (public member function) |
Characteristics | |
[static](C++11) | gets the smallest possible value in the output range of the underlying engine. (public static member function) |
[static](C++11) | gets the largest possible value in the output range of the underlying engine. (public static member function) |
[edit]Non-member functions
(C++11)(C++11)(removed in C++20) | compares the internal states of the adaptors and underlying engines (function) |
(C++11) | performs stream input and output on pseudo-random number engine adaptor (function) |
[edit]Member objects
constexpr size_t table_size [static](C++11) | the size of the internal table, K (public static member constant) |
[edit]Example
This section is incomplete Reason: no example |