Share via


discard_block_engine Class

Genera una secuencia aleatoria descartar los valores devueltos por su motor base.

template<class Engine,
    int P, int R>
    class discard_block_engine {
public:
    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_engine();
    explicit discard_block_engine(const base_type& eng);
    explicit discard_block_engine(result_type x0);
    explicit discard_block_engine(seed_seq& seq);
    void seed();
    void seed(result_type x0);
    void seed(seed_seq& seq);
    const base_type& base() const;
    static const result_type min();
    static const result_type max();
    result_type operator()();
    void discard(unsigned long long count);
private:
    Engine stored_eng;
    int count;
    };

Parámetros

  • Engine
    El tipo aleatorio almacenado de motor.

  • P
    el tamaño de bloque total.

  • R
    el tamaño de bloque utilizado.

Comentarios

La clase de plantilla describe <random> que genera valores descartar algunos de los valores devueltos por su motor base.Cada ciclo de motor compuesto inicia devuelve los valores de R sucesivamente generados por el motor base y termina descartar P - R valores.state de motor es el estado de stored_eng seguido del número de llamadas a operator() que se han producido desde el principio del ciclo actual.

El valor del argumento R de plantilla debe ser menor o igual que el valor del argumento Pde la plantilla.

Requisitos

encabezado: <aleatorio>

espacio de nombres: std

Vea también

Referencia

<random>

discard_block_engine::base

discard_block_engine::base_type

discard_block_engine::discard

discard_block_engine::discard_block_engine

discard_block_engine::operator()

discard_block_engine::seed