为什么arc4random_uniform可以设置为常量?

时间:2015-03-25 22:19:56

标签: swift random constants arc4random

为什么arc4random_uniform可以设置为常量?我注意到在多个例子中。 arc4random_uniform每次调用时都会生成一个新值,我认为常量的值永远不会改变?它看起来更像是变量。

1 个答案:

答案 0 :(得分:0)

这令人困惑。

你可以让事情变得不变。在这种情况下,东西是一个功能。您正在设置对函数的常量引用。将arc4random_uniform()视为随机数工厂。这是不变的。它坐在那里,等待创建随机数字,就像汽车工厂一样,坐着等待制造汽车。

当您拨打随机数工厂时,它会为您提供一个新的随机数,但物品本身(随机数工厂)保持不变。

编辑:

如果你有一个函数的变量引用,那么你可以在该变量中存储不同的随机数工厂。每个人可能有不同的表现特征(速度,结果的真实随机性,结果范围等)