我学会了用C#编程,并开始学习C++。我正在使用Visual Studio 2010 IDE。我正在尝试使用<random>
中的可用分布类生成随机数。例如,我试图做以下几点:如何使用<random>头成员在C++中生成随机数?
#include <random>
std::normal_distribution<double> *normal = new normal_distribution<double>(0.0, 0.0);
std::knuth_b *engine = new knuth_b();
std::variate_generator<knuth_b, normal_distribution<double>> *rnd;
rnd = new variate_generator<knuth_b, normal_distribution<double>>(engine, normal);
最后一行给出一个编译器错误: 智能感知:无构造“的std :: TR1 :: variate_generator < _Engine,_Distrib> :: variate_generator [实例与_Engine = std :: tr1 :: knuth_b,_Distrib = std :: tr1 :: normal_distribution]“与参数列表相匹配
我的观点对我来说很好,我做错了什么?当variate_generator类在这里被实例化时,你调用哪个方法来获得下一个随机数,即.NET的System.Random.Next()?
酷感谢它的作品,现在我知道图书馆。 –
2010-09-14 17:22:05