xor_combine Class
Gera uma combined distribuição.
template<class Engine1, int S1,
class Engine2, int S2>
class xor_combine {
public:
typedef Engine1 base1_type;
typedef Engine2 base2_type;
typedef typename Engine1::result_type;
static const int shift1 = S1;
static const int shift2 = S2;
xor_combine();
xor_combine(const base1_type& eng1, const base2_type& eng2);
template<class Gen>
xor_combine(Gen& gen);
xor_combine(const xor_combine& right);
xor_combine(xor_combine& right);
void seed();
template<class Gen>
void seed(Gen& gen);
const base1_type& base1() const;
const base2_type& base2() const;
result_type min() const;
result_type max() const;
result_type operator()();
private:
base1_type stored_eng1; // exposition only
base2_type stored_eng2; // exposition only
};
Parâmetros
Engine1
O tipo do primeiro mecanismo aleatório.S1
A contagem de deslocamento para o primeiro mecanismo aleatório.Engine2
O tipo do segundo mecanismo aleatório.S2
A contagem de deslocamento para o segundo mecanismo aleatório.
Comentários
A classe de modelo descreve um mecanismo composto que produz valores combinando os valores gerados por dois mecanismos.O estado do mecanismo é o estado de stored_eng1 tiver usado pelo estado de stored_eng2.
Requisitos
Cabeçalho: <random>
namespace: STD