Returns a floating-point value from a random sequence.
The ISO C++ Standard states that this function should return values in the range [0, 1). Visual Studio is not yet compliant with this constraint. As a workaround to generate values in this range, use uniform_real_distribution.
template<class RealType, size_t Bits, class Generator> RealType generate_canonical(Generator& Gen);
The template function calls operator() of Gen repeatedly and packs the returned values into a floating-point value x of type RealType until it has gathered the specified number of mantissa bits in x. The specified number is the smaller of Bits (which must be nonzero) and the full number of mantissa bits in RealType. The first call supplies the lowest-order bits. The function returns x.