2

我需要为蒙特卡洛模拟生成均匀分布的随机数。我阅读了这个线程Random double C++11并遵循了建议,但是,每当我在代码块中运行程序时,我仍然得到相同的数字。这是我的代码:

#include <iostream>  
#include <random>    

int main(){

    std::random_device rd;                              // use random_device to get a random seed
    std::mt19937 mt(rd());                              // mt19937 is a proper pseudo-random number generator 
    std::uniform_real_distribution<double> unif(0,1);   // generate uniformly distributed random doubles in [0,1]

    double x = unif(mt);
    std::cout << x << std::endl;
}

任何建议为什么会发生这种情况?

4

0 回答 0