Utilisation de "normal_distribution<double>"
Bonjour,
j'ai un petit soucis de code pour lequelle je n'arrive pas à comprendre la raison. Pourriez-vous m'aider ?
J'ai une classe dont voici le .h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
class paramGaussian : public param {
public:
paramGaussian(const QString paramId);
void setValue(const QStringList paramValue);
double getValue() const;
private:
double m_mean;
double m_std;
std::default_random_engine m_generator;
std::normal_distribution<double> m_distribution;
}; |
Voici le .c :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
paramGaussian::paramGaussian(const QString paramId) : param(paramId), m_mean(0), m_std(0) {
m_distribution(this->m_mean, this->m_std);
}
void paramGaussian::setValue(const QStringList paramValue) {
QLocale c;
this->m_mean = c.toDouble(paramValue[0]);
this->m_std = c.toDouble(paramValue[1]);
m_distribution(this->m_mean, this->m_std);
}
double paramGaussian::getValue() const {
return m_distribution(m_generator);
} |
J'ai une erreur sur la fonction "normal_distribution<double>", si je comprends bien sur les paramètres d'entrée (j'ai lu que ça devait être des RealType et je lui passe des double, ça viendrait de ça ?
Merci pour votre aide !