2010-10-12 58 views
3

我想在boost(http://www.boost.org/doc/libs/1_33_1/libs/random/random-generators.html#linear_congruential)中使用random::linear_congruential来生成统一的随机数。该声明被定义为:linear_congruential库在增强

template<class IntType, IntType a, IntType c, IntType m, IntType val> 

有谁知道最后一个参数IntType val手段?它没有记录,我找不到任何参考。我设置了我的参数如下,但不知道如何设置VAL:

random::linear_congruential<long, 39373L, 0, 2147483647L, ??> generator; 

回答

2

给定的种子= 1,由发电机返回第10000值必须为val。这显然是PRNG实施者使用第10,000个值作为测试的常见做法。

+0

如果我不知道将返回的第10,000个值,该怎么办?如果我不想设置这个值,因为它看起来像是必需的。 – user236215 2010-10-15 11:07:52

+0

@ user236215:我认为这只是单元测试所必需的。无论“val”设置为什么,生成器都将工作并生成相同的值。 – Cubbi 2010-10-15 12:53:12