Мне нужен «хороший» способ инициализации генератора псевдослучайных чисел на C++. Я нашел статью, в которой говорится:
Чтобы генерировать случайные
числа, обычно инициализируется srand
к какому-то отличительному значению, например,
связанному со временем выполнения. Например, значение, возвращаемое функцией
time (объявленное в заголовке
ctime), меняется каждую секунду, что
достаточно характерно для большинства нужд
рандомизации.
Unixtime недостаточно уникален для моего приложения. Какой лучший способ инициализировать это? Бонусные баллы, если он переносимый, но код в основном будет работать на хостах Linux.
Я думал о том, чтобы выполнить некоторые математические вычисления с pid/unixtime, чтобы получить int, или, возможно, прочитать данные из /dev/urandom.
Спасибо!
РЕДАКТИРОВАНИЕ >
Да, я запускаю свое приложение несколько раз в секунду и сталкиваюсь с коллизиями.
Подробнее здесь: https://stackoverflow.com/questions/322 ... lize-srand
Рекомендуемый способ инициализации srand? ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Рекомендуемый способ сделать std :: ulious_ptr типа массива без инициализации значений?
Anonymous » » в форуме C++ - 0 Ответы
- 33 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Rand () генерируя одно и то же число - даже с Srand (время (NULL)) в моем основном!
Anonymous » » в форуме C++ - 0 Ответы
- 3 Просмотры
-
Последнее сообщение Anonymous
-