5
我正在使用GCC版本4.4.7的服务器上工作,而且我不得不使用这个版本。我想利用C++ 0x的<random>
库,但我读here,在这个版本uniform_real_distribution
被称为uniform_real
。当我尝试调用此函数并normal_distribution
时,我没有得到有用的输出。看到这个例子:C++ 11-library和g ++的问题4.4.7
#include <random>
#include <iostream>
using namespace std;
int main()
{
typedef std::mt19937 Engine;
typedef std::uniform_real<double> Dis1;
typedef std::normal_distribution<double> Dis2;
Engine eng(0);
Dis1 dis1(0, 1);
cout << dis1(eng) << endl; //OUTPUTS 3.49921e+09
Dis2 dis2(0, 1);
cout << dis2(eng) << endl; //STALLS, NO OUTPUT
return 0;
}
我编译g++44 -std=c++0x main.cpp
和我已经证明我得到什么输出。这里有什么问题?
4.4是相当古老的,特别是当涉及到C++ 11一致性时。 – PlasmaHH
对于C++ 11的支持,4.7之前的任何东西都很稀少。 –