std::stringstream
является одним из способов преобразования числа в строку, код ниже показывает различные двигатели и распределение возможно. По умолчанию он равен Mersenne Twister
для двигателя и normal distribution
. Это хорошо reference для имеющихся вариантов:
#include <iostream>
#include <iomanip>
#include <string>
#include <map>
#include <random>
#include <sstream>
int main()
{
std::random_device rd;
//
// Engines
//
std::mt19937 e2(rd());
//std::knuth_b e2(rd());
//std::default_random_engine e2(rd()) ;
//
// Distribtuions
//
std::normal_distribution<> dist(2, 2);
//std::student_t_distribution<> dist(5);
//std::poisson_distribution<> dist(2);
//std::extreme_value_distribution<> dist(0,2);
std::stringstream s1 ;
s1 << dist(e2) ;
std::string str1 = s1.str();
std::cout << str1 << std::endl ;
}
другой способ преобразовать в string
будет использовать std::to_string
:
str1 = std::to_string(dist(e2)) ;
'main' должен вернуть' int'. –
Google, похоже, много помогает - http://en.cppreference.com/w/cpp/numeric/random/random_device – dchhetri
main автоматически возвращает int в C++, Shafik. Нет особой необходимости, хотя это может быть хороший стиль. – Nathan