that has a template type parameter
named Sseq
is undefined unless the corresponding template argument
is cv-unqualified and
satisfies the requirements
of seed sequence.
that has a template type parameter
named URBG
is undefined unless the corresponding template argument
is cv-unqualified and
satisfies the requirements
of uniform random bit generator.
that has a template type parameter
named Engine
is undefined unless the corresponding template argument
is cv-unqualified and
satisfies the requirements
of random number engine.
that has a template type parameter
named RealType
is undefined unless the corresponding template argument
is cv-unqualified and
is one of
float, double, or long double.
that has a template type parameter
named IntType
is undefined unless the corresponding template argument
is cv-unqualified and
is one of
short,
int,
long,
long long,
unsigned short,
unsigned int,
unsigned long,
or
unsigned long long.
that has a template type parameter
named UIntType
is undefined unless the corresponding template argument
is cv-unqualified and
is one of
unsigned short,
unsigned int,
unsigned long,
or
unsigned long long.
Throughout this subclause [rand],
phrases of the form “x is an iterator of a specific kind”
shall be interpreted as equivalent to the more formal requirement that
“x is a value
of a type satisfying the requirements
of the specified iterator type”.
Throughout this subclause [rand],
any constructor that can be called with a single argument
and that satisfies a requirement specified in this subclause
shall be declared explicit.