Message d erreur: ambiguous overload for ‘operator>>’ in ‘std:

I0o0I Messages postés 8 Date d'inscription mardi 24 novembre 2009 Statut Membre Dernière intervention 3 décembre 2009 - 26 nov. 2009 à 16:18
I0o0I Messages postés 8 Date d'inscription mardi 24 novembre 2009 Statut Membre Dernière intervention 3 décembre 2009 - 26 nov. 2009 à 18:56
Hello,

J suis désolée, c est une question d ultra-débutant mais c'est juste que j aimerais bien etre sure de comprendre les messages d erreur. J ai le programme basic (du cours) suivant:

#include

int main()

{

const int a=5;

std::cin>>a;
std::cout<>’ in ‘std::cin >> a"
Etant donné que c'est un message d erreur qui apparait souvent j aimerais bien le comprendre.
Est ce que dans ce cas la ca veut simplement dire qu on ne peut pas demander d entrer un input "a" pcq il est déja defini comme etant une constante = à 5 dans le programme? Et qu est ce que ce message veut dire "en général" (si on peut faire une généralité). j ai chercher sur google mais j comprend tjs pas..
peut etre que c est peine perdu..;)
merci!

(j suis donc en c++)

3 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
26 nov. 2009 à 17:59

const int a = 5;
std::cin >> a;


Si a est une constante, tu ne peux pas la modifier.
Le message d'erreur veut dire:
"Désolé, mais je n'ai pas d'opérateur >> qui est capable de remplir une constante. Je ne sais pas quoi faire avec, et je trouve ça ambigüe."

Ceci devrait fonctionner:

int a = 5;
std::cin >> a;
1
I0o0I Messages postés 8 Date d'inscription mardi 24 novembre 2009 Statut Membre Dernière intervention 3 décembre 2009
26 nov. 2009 à 16:22
Désolée... c'est donc: ambigous overload for 'operator>>' in 'std::cin>>a'
0
I0o0I Messages postés 8 Date d'inscription mardi 24 novembre 2009 Statut Membre Dernière intervention 3 décembre 2009
26 nov. 2009 à 18:56
Merci bcp!
0
Rejoignez-nous