libstdc++
std::uniform_int_distribution< _IntType > Class Template Reference

#include <random>

Classes

struct  param_type
 

Public Types

typedef _IntType result_type
 

Public Member Functions

 uniform_int_distribution ()
 
 uniform_int_distribution (_IntType __a, _IntType __b=__gnu_cxx::__int_traits< _IntType >::__max)
 
 uniform_int_distribution (const param_type &__p)
 
template<typename _ForwardIterator, typename _UniformRandomBitGenerator>
void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomBitGenerator &__urng)
 
template<typename _ForwardIterator, typename _UniformRandomBitGenerator>
void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomBitGenerator &__urng, const param_type &__p)
 
template<typename _UniformRandomBitGenerator>
void __generate (result_type *__f, result_type *__t, _UniformRandomBitGenerator &__urng, const param_type &__p)
 
result_type a () const
 
result_type b () const
 
result_type max () const
 
result_type min () const
 
template<typename _UniformRandomBitGenerator>
result_type operator() (_UniformRandomBitGenerator &__urng)
 
template<typename _UniformRandomBitGenerator>
result_type operator() (_UniformRandomBitGenerator &__urng, const param_type &__p)
 
param_type param () const
 
void param (const param_type &__param)
 
void reset ()
 

Friends

bool operator== (const uniform_int_distribution &__d1, const uniform_int_distribution &__d2)
 

Detailed Description

template<typename _IntType = int>
class std::uniform_int_distribution< _IntType >

Uniform discrete distribution for random numbers. A discrete random distribution on the range $[min, max]$ with equal probability throughout the range.

Since
C++11

Definition at line 88 of file uniform_int_dist.h.

Member Typedef Documentation

◆ result_type

template<typename _IntType = int>
typedef _IntType std::uniform_int_distribution< _IntType >::result_type

The type of the range of the distribution.

Definition at line 95 of file uniform_int_dist.h.

Constructor & Destructor Documentation

◆ uniform_int_distribution() [1/3]

template<typename _IntType = int>
std::uniform_int_distribution< _IntType >::uniform_int_distribution ( )
inline

Constructs a uniform distribution object.

Definition at line 136 of file uniform_int_dist.h.

◆ uniform_int_distribution() [2/3]

template<typename _IntType = int>
std::uniform_int_distribution< _IntType >::uniform_int_distribution ( _IntType __a,
_IntType __b = __gnu_cxx::__int_traits<_IntType>::__max )
inlineexplicit

Constructs a uniform distribution object.

Definition at line 142 of file uniform_int_dist.h.

◆ uniform_int_distribution() [3/3]

template<typename _IntType = int>
std::uniform_int_distribution< _IntType >::uniform_int_distribution ( const param_type & __p)
inlineexplicit

Definition at line 149 of file uniform_int_dist.h.

Member Function Documentation

◆ __generate() [1/3]

template<typename _IntType = int>
template<typename _ForwardIterator, typename _UniformRandomBitGenerator>
void std::uniform_int_distribution< _IntType >::__generate ( _ForwardIterator __f,
_ForwardIterator __t,
_UniformRandomBitGenerator & __urng )
inline

Definition at line 214 of file uniform_int_dist.h.

◆ __generate() [2/3]

template<typename _IntType = int>
template<typename _ForwardIterator, typename _UniformRandomBitGenerator>
void std::uniform_int_distribution< _IntType >::__generate ( _ForwardIterator __f,
_ForwardIterator __t,
_UniformRandomBitGenerator & __urng,
const param_type & __p )
inline

Definition at line 221 of file uniform_int_dist.h.

◆ __generate() [3/3]

template<typename _IntType = int>
template<typename _UniformRandomBitGenerator>
void std::uniform_int_distribution< _IntType >::__generate ( result_type * __f,
result_type * __t,
_UniformRandomBitGenerator & __urng,
const param_type & __p )
inline

Definition at line 228 of file uniform_int_dist.h.

◆ a()

template<typename _IntType = int>
result_type std::uniform_int_distribution< _IntType >::a ( ) const
inline

Definition at line 162 of file uniform_int_dist.h.

◆ b()

template<typename _IntType = int>
result_type std::uniform_int_distribution< _IntType >::b ( ) const
inline

Definition at line 166 of file uniform_int_dist.h.

◆ max()

template<typename _IntType = int>
result_type std::uniform_int_distribution< _IntType >::max ( ) const
inline

Returns the inclusive upper bound of the distribution range.

Definition at line 195 of file uniform_int_dist.h.

◆ min()

template<typename _IntType = int>
result_type std::uniform_int_distribution< _IntType >::min ( ) const
inline

Returns the inclusive lower bound of the distribution range.

Definition at line 188 of file uniform_int_dist.h.

◆ operator()() [1/2]

template<typename _IntType = int>
template<typename _UniformRandomBitGenerator>
result_type std::uniform_int_distribution< _IntType >::operator() ( _UniformRandomBitGenerator & __urng)
inline

Generating functions.

Definition at line 203 of file uniform_int_dist.h.

Referenced by operator()().

◆ operator()() [2/2]

template<typename _IntType>
template<typename _UniformRandomBitGenerator>
uniform_int_distribution< _IntType >::result_type std::uniform_int_distribution< _IntType >::operator() ( _UniformRandomBitGenerator & __urng,
const param_type & __p )

Definition at line 287 of file uniform_int_dist.h.

◆ param() [1/2]

template<typename _IntType = int>
param_type std::uniform_int_distribution< _IntType >::param ( ) const
inline

Returns the parameter set of the distribution.

Definition at line 173 of file uniform_int_dist.h.

Referenced by std::operator>>().

◆ param() [2/2]

template<typename _IntType = int>
void std::uniform_int_distribution< _IntType >::param ( const param_type & __param)
inline

Sets the parameter set of the distribution.

Parameters
__paramThe new parameter set of the distribution.

Definition at line 181 of file uniform_int_dist.h.

◆ reset()

template<typename _IntType = int>
void std::uniform_int_distribution< _IntType >::reset ( )
inline

Resets the distribution state.

Does nothing for the uniform integer distribution.

Definition at line 159 of file uniform_int_dist.h.

Friends And Related Symbol Documentation

◆ operator==

template<typename _IntType = int>
bool operator== ( const uniform_int_distribution< _IntType > & __d1,
const uniform_int_distribution< _IntType > & __d2 )
friend

Return true if two uniform integer distributions have the same parameters.

Definition at line 238 of file uniform_int_dist.h.


The documentation for this class was generated from the following file: