Namespaces
Variants

C++ named requirements: RandomNumberEngineAdaptor (since C++11)

From cppreference.net
C++ named requirements

Un RandomNumberEngineAdaptor est un RandomNumberEngine qui transforme la sortie d'un autre RandomNumberEngine , ce dernier étant appelé moteur de base .

Exigences

Étant donné

  • B , un RandomNumberEngine
  • b , un objet de type B
  • A , un RandomNumberEngineAdaptor , adaptant B comme moteur de base
  • a , un objet de type A
fonction sémantique
A :: A ( ) ; Le moteur de base est initialisé comme par son constructeur par défaut.
bool operator == ( const A & lhs, const A & rhs ) ; Indique si le moteur de base de lhs est égal à celui de rhs ou non.
A :: A ( result_type s ) ; Le moteur de base est initialisé avec s .
template < class Sseq > A :: A ( Sseq & q ) ; Le moteur de base est initialisé avec q .
void seed ( ) ; Appelle b. seed ( ) .
void seed ( result_type s ) ; Appelle b. seed ( s ) .
template < class Sseq > void seed ( Sseq & q ) ; Appelle b. seed ( q ) .

En outre

  • La complexité de chaque fonction de A ne dépasse pas la complexité de la fonction de B
  • L'état de A inclut l'état de B
  • La taille de l'état de A n'est pas inférieure à la taille de b
  • La copie de l'état de A inclut la copie de l'état de B
  • La représentation textuelle de A inclut la représentation textuelle de B

Bibliothèque standard

Les fonctionnalités suivantes de la bibliothèque standard satisfont RandomNumberEngineAdaptor :

ignore certaines sorties d'un moteur de nombres aléatoires
(modèle de classe)
regroupe la sortie d'un moteur de nombres aléatoires en blocs d'un nombre spécifié de bits
(modèle de classe)
délivre la sortie d'un moteur de nombres aléatoires dans un ordre différent
(modèle de classe)