Bonjour,
je travail sur Qt et il me retourne l'erreur suivante :
operator.cpp:107: erreur : C2668: 'sqrt'ÿ: appel ambigu … une fonction surcharg‚e
C:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\math.h(127): peut ˆtre 'double sqrt(double)'
C:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\math.h(541): ou 'float sqrt(float)'
C:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\math.h(589): ou 'long double sqrt(long double)'
lors de la tentative de mise en correspondance de la liste des arguments '(int)'
le code étant le suivant :
Auriez vous une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Constante* Sqrt::apply(const Constante& c1){ Constante* result; switch(c1.getType()){ case Constante::INTEGER: result = new Real(std::sqrt(static_cast<const Integer&>(c1).getVal())); break; case Constante::RATIONNAL: result = new Real(sqrt(static_cast<const Fraction&>(c1).getNum())/sqrt(static_cast<const Fraction&>(c1).getNum())); break; case Constante::REAL: result = new Real(sqrt(static_cast<const Real&>(c1).getVal())); break; } return result; }![]()
Partager