public member function
<random>

std::independent_bits_engine::discard

void discard (unsigned long long z);
Advance internal state
Advances the internal state by z notches, as if operator() was called z times, but without generating any numbers in the process.

The effects on the state sequence are the same as if the transition algorithm was applied z times on subsequent elements.

Parameters

z
Number of equivalent advances.

Return value

None

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// independent_bits_engine::discard #include <iostream> #include <chrono> #include <cstdint> #include <random> int main () { // obtain a seed from the system clock: unsigned seed = std::chrono::system_clock::now().time_since_epoch().count(); std::independent_bits_engine<std::mt19937,64,std::uint_fast64_t> generator (seed); std::cout << "Random value: " << generator() << std::endl; generator.discard(1); // discard one element std::cout << "Random value: " << generator() << std::endl; return 0; }

Possible output:
Random value: 13760645581718272663 Random value: 451864462774584642 


Complexity

Linear in z.

See also