我发现有很多问题,这个话题,但所有的问题似乎与不使用C++ 11.我的代码编译为“default_random_engine”不是性病
#include <random>
int main(int argc, char *argv[]){
std::default_random_engine generator;
return 0;
}
即使我编译
gcc -std=c++0x testmain.cpp
给出default_random_engine不是std成员的错误。该程序编译在远程机器上,我不保持自己,但
gcc -v
产生版本4.4.7。
任何想法?
GCC版本4.4很旧,不支持所有的C++ 11标准。值得注意的是随机数功能缺失。 –
你可以在远程机器上安装任何东西吗?还是它安装了“boost”? – juanchopanza
使用Boost或TR1随机库。对于后者,'#include'。我不认为它有'default_random_engine',所以你必须使用别的东西,也许'std :: tr1 :: mt19937' –
Praetorian