【问题标题】:How std::random_device generate non-deterministic random numbers? [closed]std::random_device 如何生成非确定性随机数? [关闭]
【发布时间】:2020-01-15 14:30:41
【问题描述】:

为什么 std::random_device 会生成不确定的随机数?这个生成器中的种子是什么?不是时候,那又怎样?

【问题讨论】:

  • 有点解释here。试图找到一个更好的骗子。
  • “如果实施限制阻止生成不确定的随机数,则实施可能会使用随机数引擎。” rand.device
  • std::random_device 应该生成非确定性值,但不是必须的。这取决于平台必须提供什么。
  • 在糟糕的实现中,std::random_device 有时可以实现为每次都返回相同的数字序列。见this question

标签: c++ random


【解决方案1】:

未指定。实现应该提供合适的方法来做到这一点,通常他们会求助于操作系统提供的工具。

例如,在 Linux 上,有/dev/[u]random 设备将提供系统状态的熵。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-12
    • 1970-01-01
    • 1970-01-01
    • 2018-05-20
    • 2013-07-20
    • 1970-01-01
    相关资源
    最近更新 更多