subtract_with_carry_engine::seed
Definisce il motore.
void seed(UIntType x0 = default_seed);
void seed(seed_seq& seq);
Parametri
x0
Valore di inizializzazione.seq
L'oggetto di tipo seed_seq che fornisce il valore randomizzato.
Note
Precondizione: 0 < x0
La prima funzione di inizializzazione efficacemente dal motore gen:
linear_congruential_engine<UIntType, 40014, 0, 2147483563>
gen(x0 == 0 ? default_seed: x0);
Quindi impostare i valori cronologia R a partire da h[0] i valori prodotti chiamando gen().
La seconda funzione di inizializzazione imposta questi valori cronologici come segue:
k è il numero di Integer unsigned long necessari per fornire tutti i bit in un Integer UIntType (almeno 1).
a è una matrice di elementi R * k di tipo UIntType.
a viene inizializzato chiamando seq.generate(&a[0], &a[R * k]).
Ogni h[i] è costituita imballando gli elementi k che iniziano a a[i * k], che fornisce i bit di ordine inferiore.
Ogni h[i] modulo viene ridotto M.
In entrambi i casi, presentano vengono archiviati h[R - 1] == 0.
Requisiti
intestazione: <random>
Spazio dei nomi: deviazione standard