我的问题是我不太会生成在代码中实现的随机数,而是想问你这里是否还好-我的意思是每次编译代码时它都应该生成新的随机数吗?此外,请您说明以下三个方面的区别:
for(auto someObject:SomeClass)
for(auto &someObject:SomeClass)
第三个显示在下面的方法中。
这里有一些类定义和生成随机数的方法
class DiscretePDFGenerator {
.
.
.
vector<std::shared_ptr<DiscreteProbabilityValue>>probabilities_;
std::random_device seed_;
std::mt19937 rng_;
std::uniform_real_distribution<double> distribution_;
.
.
.
}
std::string DiscretePDFGenerator::generateGrade ()
{
string value;
double rng,sumProbability=0.0;
rng=distribution_(rng_);
for (auto &&probability: probabilities_)
{
sumProbability+=probability->getProbability();
if (rng<sumProbability)
{
value= probability->getValue();
break;
}
}
return value;
}
我想问一下,如果您明白我的意思,是否甚至需要使其成为双重参考或单一参考还是什至没有参考。 抱歉,这是一个愚蠢的问题,谢谢您的帮助!