Как правильно определить тип семян для различных двигателей случайных чисел в стандартной библиотеке C ++C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Как правильно определить тип семян для различных двигателей случайных чисел в стандартной библиотеке C ++

Сообщение Anonymous »

Недавно было обсуждено в Subedit Reddit C ++, относящиеся к трудностям использования случайной библиотеки. Одна из проблем заключалась в том, как правильно заселить двигатели случайных чисел. < /P>

Код: Выделить всё

std::random_device r;
std::array seed;
std::generate_n(seed.data(),seed.size(),std::ref(r));
std::seed_seq seq(std::begin(seed),std::end(seed));
< /code>
Похоже, что две из основных реализаций STL делают это, выяснение типа ввода последовательности семян не является тривиально познаваемым - даже не достижимо из черт типов по внешности. Будьте больше в зависимости от определения std :: uint_least32_t < /p>

msvc (Microsoft Visual Studio Community 2022 Версия 17.14.0) < /p>
template 
void seed(_Seed_seq& _Seq) { // reset sequence from seed sequence
constexpr int _Kx = (_Wx + 31) / 32;
unsigned long _Arr[_Kx * _Nx];   _If_seed_seq
{
const _UIntType __upper_mask = (~_UIntType()) 

Подробнее здесь: [url]https://stackoverflow.com/questions/79668364/how-to-correctly-determine-the-seed-type-for-the-various-random-number-engines-i[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»