У меня есть простой пример кода:
#include <iostream>
#include <random>
using namespace std;
int main() {
minstd_rand0 gen(1);
uniform_real_distribution<double> dist(0.0, 1.0);
for(int i = 0; i < 10; ++i) {
cout << "1 " << dist(gen) << endl;
}
normal_distribution<double> dist2(0.0, 1.0);
minstd_rand0 gen2(1);
for(int i = 0; i < 10; ++i) {
cout << "2 " << dist2(gen2) << endl;
}
return 0;
}
Что я компилирую на gcc и msvc, Я получаю разные результаты по std-коду! (
Итак, почему результаты GCC и MSVC std::normal_distribution
отличаются друг от друга для одного и того же семени и генератора и, самое главное, как заставить их быть одинаковыми?