Namespaces
Variants
Actions

std::discard_block_engine

From cppreference.com
< cpp‎ | numeric‎ | random
 
 
 
 
 
Defined in header <random>
template<

    class Engine,
    std::size_t P, std::size_t R

>class discard_block_engine;
(since C++11)

discard_block_engine is a pseudo-random number engine adaptor that discards a certain amount of data produced by the base engine. From each block of size P generated by the base engine, the adaptor keeps only R numbers, discarding the rest.

Contents

[edit]Template parameters

Engine - the type of the wrapped engine.
P - the size of a block. Expected that P > 0.
R - the number of used numbers per block. Expected that 0 < R ≤ P.
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
(C++11)
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 constants

constexpr size_t block_size
[static](C++11)
the size of the block, P
(public static member constant)
constexpr size_t used_block
[static](C++11)
the number of used numbers per block, R
(public static member constant)

[edit]Example

close