Random#
Random number generation facilities.
Info
To use declarations from this page, include the <essence/random.hpp> header.
-
static std::random_device random::device#
The systems’ default random device.
-
static thread_local std::mt19937 gen = std::mt19937{device()}#
A thread local Mersenne Twister pseudorandom number genrator.
-
template<typename T = i32>
T rng(T min, T max) noexcept# Generate a random number between
minandmax.Tmust be an integral or floating point type.
-
template<typename T = i32>
T rng(T max) noexcept# Generate a random number between 0 and
max.Tmust be an integral or floating point type.
using namespace essence;
// a random 32-bit unsigned integer
auto rui = rng<u32>(20, 100);
// a random 64-bit floating point number
auto rfp = rng<f64>(100.0);