discard_block Class
Genera una sequenza casuale rimuovendo i valori restituiti nel motore di base.Mantenuto per compatibilità TR1.In alternativa, utilizzare 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
};
Parametri
Engine
Il tipo casuale archiviato il motore.P
La dimensione di un blocco totale.R
La dimensione di un blocco utilizzata.
Note
La classe modello descrive un modulo composta che produce valori rimuovendo i valori restituiti nel motore di base.Ogni ciclo del motore composto inizia a restituire i valori R avanti prodotti dal motore di base e termina rimozione P - R tali valori.Lo stato del motore è lo stato stored_eng seguita dal numero di chiamate a operator() apportate dall'inizio del ciclo corrente.
Il valore dell'argomento di modello R sia minore o uguale al valore dell'argomento di modello P.
Requisiti
intestazione: <random>
Spazio dei nomi: deviazione standard