std::generate_n
De cppreference.com
![]() | This page has been machine-translated from the English version of the wiki using Google Translate. The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
Defined in header <algorithm> | ||
template<class OutputIt, class Size, class Generator > void generate_n( OutputIt first, Size count, Generator g ); | (hasta C++11) (desde C++11) | |
Asigna valores, generados por
g
dado objeto de función, a los elementos count
primero en el comienzo rango en first
, si count>0
. No hace nada por lo demás .Original:
Assigns values, generated by given function object
g
, to the first count
elements in the range beginning at first
, if count>0
. Does nothing otherwise.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Contenido |
[editar]Parámetros
first | - | el comienzo de la gama de elementos a generar Original: the beginning of the range of elements to generate The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | |||||||||
count | - | número de los elementos a generar Original: number of the elements to generate The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | |||||||||
g | - | generator function object that will be called. The signature of the function should be equivalent to the following:
The type Ret must be such that an object of type OutputIt can be dereferenced and assigned a value of type Ret. | |||||||||
Type requirements | |||||||||||
-OutputIt must meet the requirements of OutputIterator . |
[editar]Valor de retorno
(Ninguno) (hasta C++11)
Original:
(none) (hasta C++11)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Iterator un más allá del último elemento asignado si
count>0
, first
lo contrario. (desde C++11)Original:
Iterator one past the last element assigned if
count>0
, first
otherwise. (desde C++11)The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar]Complejidad
Exactamente
count
invocaciones de g()
y asignaciones, para count>0
.Original:
Exactly
count
invocations of g()
and assignments, for count>0
.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar]Posible implementación
template<class OutputIt, class Size, class Generator > OutputIt generate_n( OutputIt first, Size count, Generator g ){for( Size i =0; i < count; i++){*first++= g();}return first;} |
[editar]Ejemplo
El siguiente código rellena una matriz de enteros con números aleatorios .
Original:
The following code fills an array of integers with random numbers.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
#include <cstddef>#include <cstdlib>#include <iostream>#include <iterator>#include <algorithm> int main(){conststd::size_t N =5;int ar[N]; std::generate_n(ar, N, std::rand);// Using the C function rand() std::cout<<"ar: ";std::copy(ar, ar+N, std::ostream_iterator<int>(std::cout, " "));std::cout<<"\n";}
Output:
52894 15984720 41513563 41346135 51451456
[editar]Ver también
asigna un valor a una serie de elementos Original: assigns a value to a number of elements The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (función de plantilla) | |
guarda el resultado de una función en un intervalo Original: saves the result of a function in a range The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (función de plantilla) |