我想在c ++ 11中使用normal_distribution生成数字。使用Qt 4.8 MinGW。我添加了下一行
QMAKE_CXXFLAGS + = -std = c ++ 0x
到我的.pro文件 然后得到下一个错误: 'swprintf ::'尚未宣布 'vswprintf ::'尚未声明
答案 0 :(得分:2)
幸运的是,C ++ 11中有一个具有正态分布的综合随机数生成库。
见这里:
http://en.cppreference.com/w/cpp/numeric/random
#include <random>
:::
std::random_device rd;
std::normal_distribution<double> dist(0,99);
std::mt19937 engine(rd());
double a=dist(engine);
你看到的确切错误,好像TR1的特定实现无论如何都不是很好。 (缺少包含或缺少名称空间前缀)。