generate_n
De cppreference.com
Sintaxis:
#include <algorithm> void generate_n( forward_iterator inicio, SIZE cantidad, Generator g );
La función generate_n() toma valores de la función generadora g y almacena cantidad de ellos en el rango que comienza en inicio.
[editar] Ejemplo
En el siguiente código se usa la función generadora std::rand para llenar un listado con doce (12) elementos (pseudo-)aleatorios:
const int LIM = 12; vector<int> v(100); fill(v.begin(), v.end(), 1); // llenando con +1 generate_n(v.begin(), LIM, rand); // llamando a la función rand() // En ciertos compiladores será necesario usar &rand cout << "v: "; for (vector<int>::size_type i = 0; i < v.size(); ++i) cout << v[i] << ' '; cout << endl;
La salida será similar a lo siguiente:
v: 74565 -4081 176 -461078 -155 17611 33 -915644 133978 110 12321 610885 -1 -1 -1 -1 ...