Partilhar via


discard_block_engine Class

Gera uma seqüência aleatório descartando os valores retornados pelo mecanismo 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
    O tipo do mecanismo aleatório armazenado.

  • P
    O tamanho total de bloco.

  • R
    O tamanho do bloco usado.

Comentários

A classe de modelo descreve <random> que produz valores descartando alguns dos valores retornados pelo mecanismo base.Cada ciclo do mecanismo começa composto retornando os valores de R gerados em sucessão pelo mecanismo e as extremidades de base descartando P - R esses valores.state do mecanismo é o estado de stored_eng tiver usado pelo número de chamadas a operator() que ocorreram do início do ciclo atual.

O valor do argumento R de modelo deve ser menor ou igual ao valor do argumento Pdo modelo.

Requisitos

Cabeçalho: <random>

namespace: STD

Consulte também

Referência

<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