uniform_int::operator()
Retourne une valeur aléatoire.
template<class Engine>
result_type operator()(Engine& eng);
template<class Engine>
result_type operator()(Engine& eng, result_type n);
Paramètres
Engine
Le type du moteur aléatoire.eng
Le moteur aléatoire.n
La limite supérieure pour les valeurs aléatoires.
Notes
La première fonction membre utilise le moteur eng comme une source de valeurs intégrales régulièrement distribuées et retourne des valeurs intégrales avec chaque valeur i dans la plage fermé [min(), max()] se produire à l'extérieur de la probabilité et de valeurs cet intervalle qui se produisent avec la probabilité 0.
La deuxième fonction membre utilise le moteur eng comme une source de valeurs intégrales régulièrement distribuées et retourne des valeurs intégrales avec chaque valeur i dans la plage entrouvert [0, n) se produire à l'extérieur de la probabilité et de valeurs cet intervalle qui se produisent avec la probabilité 0.
Exemple
// std_tr1__random__uniform_int_operator_fn.cpp
// compile with: /EHsc
#include <random>
#include <iostream>
typedef std::mt19937 Myeng;
typedef std::uniform_int<unsigned int> Myceng;
int main()
{
Myeng eng;
Myceng ceng(1, 1 << 15);
Myceng::input_type engval = eng();
Myceng::result_type compval = ceng(eng);
compval = compval; // to quiet "unused" warnings
engval = engval;
std::cout << "min == " << ceng.min() << std::endl;
std::cout << "max == " << ceng.max() << std::endl;
ceng.reset(); // discard any cached values
std::cout << "a random value == " << ceng(eng) << std::endl;
std::cout << "a random value == " << ceng(eng) << std::endl;
std::cout << "a random value == " << ceng(eng) << std::endl;
return (0);
}
Configuration requise
en-tête : <random>
l'espace de noms : DST