bernoulli_distribution::operator()
devuelve un valor aleatorio.
template<class Engine>
result_type operator()(Engine& eng);
template<class Engine>
result_type operator()(Engine& eng,
const param_type& par0);
Parámetros
Engine
El tipo de motor aleatorio.eng
el motor aleatorio.par0
El paquete del parámetro utilizado para devolver el valor aleatorio.
Comentarios
La primera función miembro utiliza el motor eng como origen de valores enteros aleatorios uniformemente distribuidos y devuelve true con la probabilidad especificada por el valor almacenado stored_p.
La segunda función miembro se comportará, pero utiliza los parámetros almacenados en par0.
Ejemplo
// std_tr1__random__bernoulli_distribution_operator_fn.cpp
// compile with: /EHsc
#include <random>
#include <iostream>
typedef std::mt19937 Myeng;
typedef std::bernoulli_distribution Mydist;
int main()
{
Myeng eng;
Mydist dist(0.6);
Mydist::input_type engval = eng();
Mydist::result_type distval = dist(eng);
distval = distval; // to quiet "unused" warnings
engval = engval;
std::cout << "p == " << dist.p() << std::endl;
dist.reset(); // discard any cached values
std::cout << "a random value == " << std::boolalpha
<< dist(eng) << std::endl;
std::cout << "a random value == " << std::boolalpha
<< dist(eng) << std::endl;
std::cout << "a random value == " << std::boolalpha
<< dist(eng) << std::endl;
return (0);
}
Requisitos
encabezado: <aleatorio>
espacio de nombres: std