Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Generates a random sequence by discarding values returned by its base engine.
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;
};
Parameters
Engine
The stored random engine type.P
The total block size.R
The used block size.
Remarks
The template class describes a <random> that produces values by discarding some of the values returned by its base engine. Each cycle of the compound engine begins by returning R values successively produced by the base engine and ends by discarding P - R such values. The engine's state is the state of stored_eng followed by the number of calls to operator() that have occurred since the beginning of the current cycle.
The value of the template argument R must be less than or equal to the value of the template argument P.
Requirements
Header: <random>
Namespace: std
See Also
Reference
discard_block_engine::base_type
discard_block_engine::discard_block_engine