Les conversions des types dans l'appel des fonctions en c++
Résolu
devdev1
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
devdev1 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
devdev1 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis débutant en c++ , je connais les types primitfs :short char int float double ..
mais j'ai un probléme au niveau d'appel des fontions surdéfinis, je ne sais pas quel fonction sera utilisé , j'ai cherché sur internet mais j'ai pas bien compris ce que ce passe au nivaux de la compilation de mon code là:
#include<iostream>
using namespace std;
void clone(double d){cout <<"\nLa fonction II = "; }
void clone(int n){cout << "\nLa fonction I = "; }
main(){
clone(2);
// ici la fonction va vaire appel à clone(int) , alors que le nombre 2 on peut le considére comme int , float ,double ....
// quand je mis clone(2.5) il me donne une erreur , que y'a d'ambiguité , entre clone(int) et clone(double) , pourquoi on a pas eu cette erreur avec l'appel clone(2) ?? ou bien sur quel niveau on se base là?? Merci d'avaaaaaaance :)
}
je suis débutant en c++ , je connais les types primitfs :short char int float double ..
mais j'ai un probléme au niveau d'appel des fontions surdéfinis, je ne sais pas quel fonction sera utilisé , j'ai cherché sur internet mais j'ai pas bien compris ce que ce passe au nivaux de la compilation de mon code là:
#include<iostream>
using namespace std;
void clone(double d){cout <<"\nLa fonction II = "; }
void clone(int n){cout << "\nLa fonction I = "; }
main(){
clone(2);
// ici la fonction va vaire appel à clone(int) , alors que le nombre 2 on peut le considére comme int , float ,double ....
// quand je mis clone(2.5) il me donne une erreur , que y'a d'ambiguité , entre clone(int) et clone(double) , pourquoi on a pas eu cette erreur avec l'appel clone(2) ?? ou bien sur quel niveau on se base là?? Merci d'avaaaaaaance :)
}
A voir également:
- Les conversions des types dans l'appel des fonctions en c++
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Appel privé - Guide
- Les types de ram - Guide
- Types de souris informatique - Guide
- Double appel - Guide
1 réponse
Bonjour,
Quand tu écris une valeur en dure dans le code, celle-ci a un type comme toutes les autres valeurs. C'est ce type qui est utilisé pour choisir la bonne méthode. Voici quelques écritures différentes de nombres :
Quand tu écris une valeur en dure dans le code, celle-ci a un type comme toutes les autres valeurs. C'est ce type qui est utilisé pour choisir la bonne méthode. Voici quelques écritures différentes de nombres :
#include<iostream> using namespace std; void test(int n) { cout << "int " << n << endl; } void test(long n) { cout << "long " << n << endl; } void test(float n) { cout << "float " << n << endl; } void test(double n) { cout << "double " << n << endl; } int main(){ test(1); // int 1 test(2L); // long 2 test(3.0); // double 3 test(4e0); // double 4 test(5.0f); // float 5 test(6.0d); // double 6 test(00010); // int 8 test(0x010); // int 16 }
devdev1
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
Mercii Beaucoup pour ton aide a chaque fois (y)