std::independent_bits_engine (3) - Linux Manuals

std::independent_bits_engine: std::independent_bits_engine


std::independent_bits_engine - std::independent_bits_engine


Defined in header <random>
class Engine,
std::size_t W, (since C++11)
class UIntType
> class independent_bits_engine;

independent_bits_engine is a random number engine adaptor that produces random numbers with different number of bits than that of the wrapped engine.

Template parameters

Engine - the type of the wrapped engine
W - the number of bits the generated numbers should have
UIntType - the type of the generated random numbers. The type must be unsigned integral type.

Type requirements

Engine must meet the requirements of RandomNumberEngine.
W must be greater than zero, and no greater than std::numeric_limits<UIntType>::digits.

Member types

Member type Definition
result_type UIntType

Member functions

              constructs the engine adaptor
constructor (public member function)
              sets the state of the underlying engine
seed (public member function)
              returns the underlying engine
base (public member function)


              advances the state of the underlying engine and returns the generated value
operator() (public member function)
              advances the adaptor's state by a specified amount
discard (public member function)


min gets the smallest possible value in the output range (always zero).
              (public static member function)
              gets the largest possible value in the output range (always 2w
max -1).
              (public static member function)

Non-member functions

           compares the internal states of the adaptors and underlying engines
operator== (function)
           performs stream input and output on pseudo-random number engine adaptor
operator<< (function)