Partilhar via


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

Consulte também

Referência

<random>

xor_combine::base1

xor_combine::base1_type

xor_combine::base2

xor_combine::base2_type

xor_combine::operator()

xor_combine::seed

xor_combine::xor_combine