Scroll to navigation

std::mersenne_twister_engine::seed(3) C++ Standard Libary std::mersenne_twister_engine::seed(3)

NAME

std::mersenne_twister_engine::seed - std::mersenne_twister_engine::seed

Synopsis


void seed( result_type value = default_seed ); (1) (since C++11)
template< class SeedSeq > (2) (since C++11)
void seed( SeedSeq& seq );


Sets the state of the random-number engine.


1) Right after the state is set, *this == std::mersenne_twister_engine(value) is
true.
2) Right after the state is set, *this == std::mersenne_twister_engine(seq) is true.

Parameters


value - seed value to use to set the state
seq - seed sequence to use to set the state

Exceptions


Throws nothing.

Complexity


1) Same as std::mersenne_twister_engine(value).
2) Same as std::mersenne_twister_engine(seq).

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

2024.06.10 http://cppreference.com