Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Génère une séquence aléatoire en ignorant les valeurs retournées par le moteur de base.Conservé pour la compatibilité TR1.Utilisez plutôt discard_block_engine Class.
template<class Engine,
int P, int R>
class discard_block {
public:
typedef discard_block<Engine, P, R> _MyT;
typedef Engine base_type;
typedef typename base_type::result_type result_type;
static const int block_size = P;
static const int used_block = R;
discard_block();
discard_block(const discard_block& right);
discard_block(discard_block& right);
explicit discard_block(const base_type& eng);
explicit discard_block(result_type seed);
template<class Gen>
discard_block(Gen& gen);
void seed();
template<class Gen>
void seed(Gen& gen);
const base_type& base() const;
result_type min() const;
result_type max() const;
result_type operator()();
private:
Engine stored_eng; // exposition only
int count; // exposition only
};
Paramètres
Engine
Le type aléatoire stocké du moteur.P
La taille totale des blocs.R
La taille des blocs utilisée.
Notes
La classe de modèle décrit un moteur compound qui produit des valeurs en ignorant certaines valeurs retournées par le moteur de base.Chaque cycle du moteur compound démarre en retournant des valeurs d' R successivement produites par le moteur et les conseils de base en ignorant P - R de ces valeurs.L'état du moteur est l'état d' stored_eng suivi du nombre d'appels à operator() qui se sont produits depuis le début du cycle actuel.
La valeur de l'argument template R doit être inférieur ou égal à la valeur de l'argument template P.
Configuration requise
en-tête : <random>
l'espace de noms : DST