代码之家  ›  专栏  ›  技术社区  ›  zeus

为什么randseed(randominize)在默认情况下没有初始化?

  •  1
  • zeus  · 技术社区  · 6 年前

    randseed ,用于随机数的变量,我们必须通过调用 randomize 至少 程序启动时默认由delphi初始化?没有这个重要的初始化(例如用户忘记调用randominize),随机输出是完全可预测的。我只是想知道他们的行为是不是有什么原因。。。

    1 回复  |  直到 6 年前
        1
  •  4
  •   Alexander van Oostenrijk    6 年前

    你的观点有道理。但是,类似的参数也可以用于其他100个初始化,如果程序执行,这些初始化可以方便地在开始时为您完成。

    对于这个特殊的例子:有一些场景是可以想象的,人们确实希望随机数发生器从系统时间开始播种,以便有一个可重复的集if数字用于测试。当然,方便对百分之九十九的案件是有意义的,但不是所有的案件。