STD::UNIFORM_INT_DISTRIBUTION(3cxx)
πΈ NAME πΈ
okay so bestie, welcome to the (3cxx) manual page for std::uniform_int_distribution< _IntType > β it's literally the uniform discrete distribution for random numbers, and it gives you a discrete random distribution on the range $[min, max]$ with equal probability throughout the whole range. every value in there has the same shot, no favorites, no cap π
β¨ SYNOPSIS β¨
#include <random>
π Classes
struct param_typeβ the parameter struct, iconic, does what it says on the tin.
π¦ Public Types
typedef _IntType result_typeβ the type the distribution spits out.
β Public Member Functions
uniform_int_distribution ()β constructs a uniform distribution object.uniform_int_distribution (_IntType __a, _IntType __b=__gnu_cxx::__int_traits< _IntType >::__max)β constructs a uniform distribution object.uniform_int_distribution (const param_type &__p)β constructs one straight from aparam_type.template<typename _ForwardIterator , typename _UniformRandomBitGenerator > void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomBitGenerator &__urng)β internal generate, filling[__f, __t)from__urng.template<typename _ForwardIterator , typename _UniformRandomBitGenerator > void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomBitGenerator &__urng, const param_type &__p)β same thing, but with an explicit parameter set__p.template<typename _UniformRandomBitGenerator > void __generate (result_type *__f, result_type *__t, _UniformRandomBitGenerator &__urng, const param_type &__p)β the pointer-range flavor of the above.result_type a () constβ getter for the lower bound.result_type b () constβ getter for the upper bound.result_type max () constβ returns the inclusive upper bound of the distribution range.result_type min () constβ returns the inclusive lower bound of the distribution range.template<typename _UniformRandomBitGenerator > result_type operator() (_UniformRandomBitGenerator &__urng)β generating function, the main character fr.template<typename _UniformRandomBitGenerator > result_type operator() (_UniformRandomBitGenerator &__urng, const param_type &__p)β the same, but you hand it a parameter set.param_type param () constβ returns the parameter set of the distribution.void param (const param_type &__param)β sets the parameter set of the distribution.void reset ()β resets the distribution state.
π Friends
bool operator== (const uniform_int_distribution &__d1, const uniform_int_distribution &__d2)β returntrueif two uniform integer distributions have the same parameters.
π 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 π
π§ Member Typedef Documentation π§
template<typename _IntType = int> typedef _IntType std::uniform_int_distribution< _IntType >::result_type
The type of the range of the distribution. that's it, that's the typedef β¨
π Constructor & Destructor Documentation π
template<typename _IntType = int> std::uniform_int_distribution< _IntType >::uniform_int_distribution () [inline]
Constructs a uniform distribution object.
template<typename _IntType = int> std::uniform_int_distribution< _IntType >::uniform_int_distribution (_IntType __a, _IntType __b = __gnu_cxx::__int_traits<_IntType>::__max) [inline], [explicit]
Constructs a uniform distribution object. note the [explicit] bestie, it's not playing around π
π Member Function Documentation π
template<typename _IntType = int> result_type std::uniform_int_distribution< _IntType >::max () const [inline]
Returns the inclusive upper bound of the distribution range.
template<typename _IntType = int> result_type std::uniform_int_distribution< _IntType >::min () const [inline]
Returns the inclusive lower bound of the distribution range.
template<typename _IntType = int> template<typename _UniformRandomBitGenerator > result_type std::uniform_int_distribution< _IntType >::operator() (_UniformRandomBitGenerator & __urng) [inline]
Generating functions.
References std::uniform_int_distribution< _IntType >::operator()().
Referenced by std::uniform_int_distribution< _IntType >::operator()().
(yeah it references itself, we love a self-referential queen π)
template<typename _IntType = int> param_type std::uniform_int_distribution< _IntType >::param () const [inline]
Returns the parameter set of the distribution.
Referenced by std::operator>>().
template<typename _IntType = int> void std::uniform_int_distribution< _IntType >::param (const param_type & __param) [inline]
Sets the parameter set of the distribution.
Parameters
__paramβ The new parameter set of the distribution.
template<typename _IntType = int> void std::uniform_int_distribution< _IntType >::reset () [inline]
Resets the distribution state. Does nothing for the uniform integer distribution. so like, it's there, it's valid, it's just vibing and doing absolutely nothing π«Ά
π Friends And Related Symbol Documentation π
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.
π Author π
Generated automatically by Doxygen for libstdc++ from the source code.
and that's the whole page bestie, every single detail preserved, no skips, no summaries, we ate and left no crumbs π₯
sign-off time: this was the libstdc++ (3cxx) page, generated straight from the source code by Doxygen β that's the source/version energy right there, and the footer tag says libstdstd::uniform_i...ion< _IntType >(3cxx), so that's the manual name and section, mwah πππ¦
π¦ where this page comes from
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms