23

例如,如果我std::mt19937在 GCC 和 MSVC 下使用完全相同的种子和参数实例化 a,我应该得到相同的随机数序列吗?如果是这样,我假设这个属性通常适用于 mersenne_twister_engine,因为 mt19937 只是具有特定参数的一个。在 C 语言中情况并非如此rand()。看起来标准记录了根据特定代码应用的转换,所以我怀疑它应该总是相同的,但魔鬼在细节中......

4

1 回答 1

23

对于新的随机数引擎,是的,对于相同的种子和参数,您将在所有平台上获得相同的值序列。对于rand(),没有。您也没有随机数分布的保证,即使它们被输入相同的输入值序列。

于 2012-11-27T17:01:39.537 回答