我正在使用随机数生成作为在objective-c(对于iOS)中最小化函数(使用Nelder-Mead simplex algorithm )的过程的一部分。我之所以使用arc4random()
它,是因为它似乎在任何地方都被推荐,理由是 a)它不需要播种,并且 b)它提供的随机数比rand() and random()
. 我使用生成 0 和 1 之间的双打
#define ARC4RANDOM_MAX 0x100000000
-(double) Rnd{
return (double)arc4random() / (double)ARC4RANDOM_MAX ; }
但是,为了测试该过程,我需要生成可重复的随机数序列,并且我找不到任何关于初始化方法的参考arc4random()
。是否arc4random()
无法初始化以给出可重复的序列?如果是这样,当每个测试都会导致不同的答案时,任何人如何实施自动化单元测试?我需要使用来自的“低质量”随机数random()
吗?谢谢你的帮助。