Difference between revisions of "cpp/numeric/random/independent bits engine"
From cppreference.com
(+) |
m (→Template parameters: {{c/core}}.) |
||
(24 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
{{cpp/title|independent_bits_engine}} | {{cpp/title|independent_bits_engine}} | ||
− | {{cpp/numeric/random/independent_bits_engine/ | + | {{cpp/numeric/random/independent_bits_engine/navbar}} |
− | {{ddcl | header=random | | + | {{ddcl|header=random|since=c++11| |
template< | template< | ||
− | class Engine, | + | class Engine, |
− | size_t | + | std::size_t W, |
class UIntType | class UIntType | ||
> class independent_bits_engine; | > class independent_bits_engine; | ||
}} | }} | ||
− | {{ | + | {{ttt|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=== | ||
+ | {{par begin}} | ||
+ | {{par|Engine|the type of the wrapped engine}} | ||
+ | {{par|W|the number of bits the generated numbers should have}} | ||
+ | {{par|UIntType|the type of the generated random numbers. The effect is undefined unless the parameter is cv-unqualified and is one of {{c/core|unsigned short}}, {{c/core|unsigned int}}, {{c/core|unsigned long}}, or {{c/core|unsigned long long}}.}} | ||
+ | {{par hreq}} | ||
+ | {{par req named|Engine|RandomNumberEngine}} | ||
+ | {{par req|{{tt|W}} must be greater than zero, and no greater than {{c|std::numeric_limits<UIntType>::digits}}.}} | ||
+ | {{par end}} | ||
===Member types=== | ===Member types=== | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc hitem|Member type|Definition}} |
− | {{ | + | {{dsc|{{tt|result_type}} {{mark c++11}}|{{tt|UIntType}}}} |
− | {{ | + | {{dsc end}} |
===Member functions=== | ===Member functions=== | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc constructor|independent_bits_engine}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc seed|independent_bits_engine}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc base|independent_bits_engine}} |
− | {{ | + | {{dsc h2|Generation}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc operator()|independent_bits_engine}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc discard|independent_bits_engine}} |
− | {{ | + | {{dsc h2|Characteristics}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc min|independent_bits_engine}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc max|independent_bits_engine}} |
− | {{ | + | {{dsc end}} |
===Non-member functions=== | ===Non-member functions=== | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc operator_cmp|independent_bits_engine}} |
− | {{ | + | {{dsc inc|cpp/numeric/random/adaptor/dsc operator_ltltgtgt|independent_bits_engine}} |
− | {{ | + | {{dsc end}} |
+ | |||
+ | ===Example=== | ||
+ | {{example}} | ||
+ | |||
+ | {{langlinks|de|es|fr|it|ja|pt|ru|zh}} |
Latest revision as of 16:31, 19 March 2024
Defined in header <random>
|
||
template< class Engine, |
(since C++11) | |
independent_bits_engine
is a random number engine adaptor that produces random numbers with different number of bits than that of the wrapped engine.
Contents |
[edit] 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 effect is undefined unless the parameter is cv-unqualified and is one of unsigned short, unsigned int, unsigned long, or unsigned long long. |
Type requirements | ||
-Engine must meet the requirements of RandomNumberEngine.
| ||
-W must be greater than zero, and no greater than std::numeric_limits<UIntType>::digits.
|
[edit] Member types
Member type | Definition |
result_type (C++11)
|
UIntType
|
[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 (always zero). (public static member function) |
[static] (C++11) |
gets the largest possible value in the output range (always 2w - 1). (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] Example
This section is incomplete Reason: no example |