Condividi tramite


mersenne_twister_engine::seed

Definisce il motore.

void seed(result_type 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 imposta il valore cronologico precedente h[0] a x0 mod 2W, quindi in modo iterativo imposta ogni valore cronologico successivo h[i] a (i + F * (h[i - 1] >> (W - 2))) mod 2W, ad i compreso tra 1 a N - 1.

La seconda funzione di inizializzazione imposta i valori cronologia N a partire da h[0] 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 N * k di tipo UIntType.

  • a viene inizializzato chiamando seq.generate(&a[0], &a[N * k]).

  • Ogni h[i] è costituita imballando gli elementi k che iniziano a a[i * k], che fornisce i bit di ordine inferiore.

Requisiti

intestazione: <random>

Spazio dei nomi: deviazione standard

Vedere anche

Riferimenti

<random>

mersenne_twister_engine Class