xor_combine Class
Generiert eine kombinierte Verteilung.
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
};
Parameter
Engine1
Der Typ des ersten zufälligen Moduls.S1
Die Verschiebung mit einem für das erste zufällige Modul.Engine2
Der Typ des zweiten zufälligen Moduls.S2
Die Verschiebung mit einem für das zweite Modul zufällige.
Hinweise
Die Vorlagenklasse beschreibt ein Verbundmodul, das Werte erzeugt, die Werte kombiniert, die von beiden Module erzeugt werden.Der Zustand des Moduls ist der Zustand von stored_eng1 gefolgt vom Zustand von stored_eng2.
Anforderungen
Header: <random>
Namespace: std