From cppreference.com

Pseudo-random number generation
Uniform random bit generators
Engines and engine adaptors
Non-deterministic generator
Uniform distributions
Bernoulli distributions
Poisson distributions
Normal distributions
Sampling distributions
Seed Sequences
C library
template< class CharT, class Traits, class ResultType >

std::basic_ostream<CharT,Traits>& operator<<( std::basic_ostream<CharT,Traits>& ost,

                                              const uniform_int_distribution<ResultType>& d );
template< class CharT, class Traits, class ResultType >

std::basic_istream<CharT,Traits>& operator>>( std::basic_istream<CharT,Traits>& ist,

                                              uniform_int_distribution<ResultType>& d );

Performs stream input and output operations on pseudo-random number distribution d.

1) Writes a textual representation of the distribution parameters and internal state to ost as textual representation. The formatting flags and fill character of ost are unchanged.
2) Restores the distribution parameters and internal state with data read from ist. The formatting flags of ist are unchanged. The data must have been written using a stream with the same locale, CharT and Traits template parameters, otherwise the behavior is undefined. If bad input is encountered, ist.setstate(std::ios::failbit) is called, which may throw std::ios_base::failure. d is unchanged in that case.


ost - output stream to insert the data to
ist - input stream to extract the data from
d - pseudo-random number distribution

Return value

1) ost
2) ist


1) (none)
2) may throw std::ios_base::failure on bad input.