std::mersenne_twister_engine<UIntType,w,n,m,r,a,u,d,s,b,t,c,l,f>:: seed
From cppreference.com
<
cpp
|
numeric
|
random
|
mersenne twister engine
C++
Numerics library
Common mathematical functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mathematical special functions (C++17) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mathematical constants (C++20) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Basic linear algebra algorithms (C++26) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data-parallel types (
simd
)
(C++26)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Floating-point environment (C++11) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Complex numbers | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Numeric array (
valarray
)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pseudo-random number generation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Factor operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Interpolations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Saturation arithmetic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Generic numeric operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bit operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Pseudo-random number generation
|
|
std::mersenne_twister_engine
Member functions | ||||
mersenne_twister_engine::seed
|
||||
Generation | ||||
Characteristics | ||||
Non-member functions | ||||
(C++11)
(C++11)
(until C++20)
|
||||
(C++11)
(C++11)
|
void
seed
(
result_type value
=
default_seed
)
;
|
(1) | (since C++11) |
template
<
class
SeedSeq
>
void seed ( SeedSeq & seq ) ; |
(2) | (since C++11) |
Sets the state of the random-number engine.
Parameters
value | - | seed value to use to set the state |
seq | - | seed sequence to use to set the state |
Exceptions
Complexity
1)
Same as
std::
mersenne_twister_engine
(
value
)
.
2)
Same as
std::
mersenne_twister_engine
(
seq
)
.
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 2181 | C++11 |
overload
(
2
)
would not throw even if the
seq.generate
call throws
|
propagates the exception |
See also
constructs the engine
(public member function) |
Example
Run this code
#include <iostream> #include <random> int main() { std::mt19937 gen; // Seed the engine with an unsigned int gen.seed(1); std::cout << "after seed by 1: " << gen() << '\n'; // Seed the engine with two unsigned ints std::seed_seq sseq{1, 2}; gen.seed(sseq); std::cout << "after seed by {1,2}: " << gen() << '\n'; }
Possible output:
after seed by 1: 1791095845 after seed by {1,2}: 3127717181
Retrieved from "
https://en.cppreference.com/mwiki/index.php?title=cpp/numeric/random/mersenne_twister_engine/seed&oldid=132139
"