Traducciones de esta página?:

generate

Sintaxis:

    #include <algorithm>
    void generate( forward_iterator inicio, forward_iterator fin, Generator g );

La función generate() toma valores de la función generadora g y los almacena uno por uno en el espacio de elementos entre inicio y fin.

Por ejemplo, en el siguiente código se usa la función generadora rand() de la Biblioteca Estándar para llenar un vector con elementos (pseudo-)aleatorios:

    vector<int> v(5);
    generate(v.begin(), v.end(), 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;

generate_n es una función similar que llena n espacios llamando a la función generadora en vez de llenar un rango con inicio y final definidos.

Tópicos Relacionados: copy, fill, generate_n, transform