我想在标头随机中使用 default_random_engine 和 uniform_real_distribution 生成一些随机双数。
我使用 Eclipse for C/C++ & MinGW 来构建我的项目。
- Eclipse 版本:4.2.1
- Eclipse CDT C/C++ 开发工具版本:8.1.1.201209170703
- Eclipse CDT GCC 交叉编译器支持版本:1.1.0.201209170703
- MinGW 版本:4.6.2(使用“gcc -v”检查)
当我在编辑器中键入 std::default_random_engine 时,Eclipse 提示我“无法解析类型'std::default_random_engine'”。
我已经将我的项目配置为支持 C++11 功能
- 打开 Project Properties->C/C++ Build ->Settings->Tool Settings->GCC C++ Compiler->Miscellaneous->Other Flags。最后加上“-std=c++0x”
- Project Properties->C/C++ General->Preprocessor Include Paths, Macros->[Providers] tab->your Built-in Compiler Settings provider(依赖于工具链)。单击“工作区设置”链接,进入“设置”属性页面,再次选择 [发现] 选项卡和您的提供商。有“获取编译器规格的命令”,在其中添加“-std=c++0x”。
然后我写了一个列表初始化向量和一个范围来测试C++11的支持,代码工作正常。
vector<int> ivec = {1, 2, 3};
for (int i : ivec)
cout << i << " ";
cout << endl;
“std::default_random_engine”有什么问题,我应该怎么做才能解决这个问题?