J'ai donc ce devoir à faire "Utiliser la surcharge des fonctions définir 3 fonctions avec le même nom mais avec des variantes différentes (int, int *, int &) cela retournera la racine carrée de la valeur. " Bien je l'ai fait mais je ne sais pas cela me donne cette erreur: "appel ambigu à la fonction surchargée". J'essaie de le réparer, mais pas fan ... Voici mon code, il est assez simple:surcharge C++ 3 fonction avec différents paramètres (int, * int, & int)
#define _CRT_SECURE_NO_WARNINGS
#include <math.h>
#include <iostream>
using namespace std;
double rad(int);
double rad(int*);
double rad(int&);
int main(){
int a,*pt=&a;
cin>>a;
cout<<"Radical din "<<a<<" este "<<rad(a)<<endl;
cout<<"Radical din "<<a<<" este "<<rad(pt)<<endl;
cout<<"Radical din "<<a<<" este "<<rad(&a)<<endl;
return 0;
}
double rad(int x){
return (sqrt(x));
}
double rad(int *x){
return (sqrt(*x));
}
double rad(int &x){
return (sqrt(x));
}
'double rad (int & x)' et 'double rad (int x)' confond le compilateur. – user3528438