std:: mt19937 0 RAND_MAX, rand(), 0 2 ^ 32-1
, , min() max()!
double, substract min() max() - min()
uint32_t val;
val << generator;
double doubleval = ((double)val - generator::min())/(generator::max()-generator::min());
( )
uint32_t val;
val << generator;
double doubleval = (double)val * (1.0 / std::numeric_limits<std::uint32_t>::max());