Requisitos denominados de C++:RandomNumberEngineAdaptor(desde C++11)
De cppreference.com
Un AdaptadorDeMotorDeNúmerosAleatorios es un MotorDeNúmerosAleatorios que transforma la salida de otro MotorDeNúmerosAleatorios, el último de los cuales se denomina motor base.
[editar]Requisitos
Dados
- B, un MotorDeNúmerosAleatorios,
- b, un objeto de tipo B,
- A, a AdaptadorDeMotorDeNúmerosAleatorios, que adapta B como motor base,
- a, un objeto de tipo A.
Función | Semántica |
---|---|
A::A(); | El motor base se inicializa como si fuera su constructor por defecto. |
bool operator==(const A& lhs, const A& rhs); | Devuelve si el motor base de lhs es igual al motor base de rhs o no. |
A::A(result_type s); | El motor base se inicializa con s. |
template<class Sseq> A::A(Sseq& q); | El motor base se inicializa con q. |
void seed(); | Invoca b.seed(). |
void seed(result_type s); | Invoca b.seed(s). |
template<class Sseq>void seed(Sseq& q); | Invoca b.seed(q). |
Además:
- La complejidad de cada función de A no excede la complejidad de la función de B.
- El estado de A incluye el estado de B.
- El tamaño del estado de A no es emnor que el tamaño de b.
- Copiar el estado de A incluye copiar el estado de B.
- La representación textual de A incluye la representación textual de B.
[editar]Biblioteca estándar
Las siguientes funciones de la biblioteca estándar satisfacen AdaptadorDeMotorDeNúmerosAleatorios:
(C++11) | Descarta alguna salida de un motor de números aleatorios. (plantilla de clase) |
(C++11) | Empaqueta la salida de un motor de números aleatorios en bloques de un número específico de bits. (plantilla de clase) |
(C++11) | Entrega la salida de un motor de número aleatorios en un orden diferente. (plantilla de clase) |