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. |
<metanoindex/>
<tbody> </tbody>| Dclar dans l'en-tte <algorithm>
|
||
template< class OutputIt, class Size, class Generator > void generate_n( OutputIt first, Size count, Generator g ); template< class OutputIt, class Size, class Generator > OutputIt generate_n( OutputIt first, Size count, Generator g ); |
(avant C++11) (depuis C++11) |
|
Ayants droit, les valeurs gnres par la fonction
g objet donn, aux lments count premiers pas dans la gamme dbutant first, si count>0. Ne fait rien autrement .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.
Paramtres
| first | - | le dbut de la srie d'lments gnrer
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 | - | nombre d'lments gnrer
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: <tbody> </tbody>
The type | ||||||
| Type requirements | ||||||||
-OutputIt must meet the requirements of OutputIterator.
| ||||||||
Retourne la valeur
(Aucun) (avant C++11)
Original:
(none) (avant 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 une aprs le dernier lment affect si
count>0, first autrement. (depuis C++11)Original:
Iterator one past the last element assigned if
count>0, first otherwise. (depuis 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.
Complexit
Exactement
count invocations de g() et des affectations, pour 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.
Mise en uvre possible
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;
}
|
Exemple
Le code suivant remplit un tableau d'entiers avec des nombres alatoires .
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()
{
const std::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";
}
Rsultat :
52894 15984720 41513563 41346135 51451456
Voir aussi
assigne une valeur un nombre d'lments 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. (fonction gnrique) | |
enregistre le rsultat d'une fonction dans une plage 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. (fonction gnrique) | |