F0rEign
Messages postés57Date d'inscriptionvendredi 22 mars 2013StatutMembreDernière intervention 6 septembre 2016
-
Modifié par F0rEign le 17/03/2016 à 22:57
F0rEign
Messages postés57Date d'inscriptionvendredi 22 mars 2013StatutMembreDernière intervention 6 septembre 2016
-
18 mars 2016 à 11:38
Bonjour, Je vais faire vite car j'ai souvent beaucoup de problème en C++.
Cette fois-ci je suis confronté à un problème que je n'ai jamais eu auparavant, sur le code ci-dessous, permettant de créer des sujets, comme sur ce forum j'ai l'erreur
"ambiguous overload for 'operator>>' in 'std::cin >> choiceYesNo'
PS : Vu qu'il y aura certainement une personne s'appellant "cpuinglu" ou un truc du genre (désolé si j'ai mal écris) qui va surement venir sur ce post, je préfère prévenir que les std namespace j'ai pas eu le temps de les enlever...
Le code :
#include <iostream> #include <windows.h>
using namespace std;
double versionProg(0.5);
string softwareName(" ForCom");
void createCategory() { int choiceYesNo(); string createCategoryString();
cout << " vous avez decide de creer une nouvelle categorie " << endl; cout << " Entrez le nom de la nouvelle categorie\n " << endl;
cin >> createCategoryString;
cout << " Vous avez creee la categorie " << createCategoryString << " C'est ca ? " << endl; cout << " 1.Oui\n 2.Non " << endl;
cin >> choiceYesNo;
if (choiceYesNo == 1) {
cout << " Vous avez confirme la creation de votre nouvelle categorie appele " << createCategoryString << endl;
}
else if (choiceYesNo == 2) {
cout << " Retour a la creation d'une categorie " << endl; Sleep(1500); createCategory(); }
}
void createSubject() { string choiceSubject(); int choiceAlreadySubject(); int choiceCategory(); cout << " Vous avez decide de creer un sujet\n Vous voulez :\n 1.Creer une categorie\n 2.Voir les categories existantes" << endl; cin >> choiceCategory; if (choiceCategory == 1) {
createCategory();
}
}
void options() { int choiceOptions; cout << " Vous etes dans les options\n Ce programme est actuellement en version " << versionProg << endl; cout << " Ce programme a ete creee par F0rEign\n \n ----- Pour nous contacter : nicolas.buchot@hotmail.fr ----- \n " << endl; cout << " 1.Retour Menu\n 2.Quitter" << endl; cin >> choiceOptions; if (choiceOptions == 1) {
} else if (choiceOptions == 2) { cout << " Vous quittez le programme\n A bientot ! " << endl; Sleep(1500); }
}
void menu() { int choiceMenu; system ("title Com'SoftWare "); system ("color 1e"); cout << " Bienvenue sur la version " << versionProg << " de " << softwareName << endl; cout << " Choisissez une option parmis ceux-la.\n " << endl; cout << " 1.Creer un sujet\n 2.Options\n 3.Quitter " << endl; cin >> choiceMenu; switch (choiceMenu) { case 1:
createSubject(); // Creer un sujet
break;
case 2:
options(); // Options
break;
case 3:
cout << " Vous quittez le programme\n A bientot ! " << endl; Sleep(1500);
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023124 18 mars 2016 à 00:31
Bonjour.
Merci NHenry, ton intuition est la bonne. C'est exactement le souci.
"int a;" => déclaration d'une variable a.
"int a();" => déclaration d'une fonction a qui retourne un entier.
Si tu veux initialiser une variable, écris: "int a = 0;".
Pour les constantes, indique qu'elles le sont.
double versionProg(0.5); => const double versionProg = 0.5;
une personne s'appellant "cpuinglu" ou un truc du genre
Tout de même, ça prend 2 min, de regarder l'historique de tes posts et retrouver mon pseudo...
les std namespace j'ai pas eu le temps de les enlever...
Tu ne devrais pas avoir besoin de les retirer car tu ne devrais pas en avoir dès le début...
Je ne ferais pas une critique détaillée de ton code. Certaines choses vont mieux (switch, fonctions), d'autres n'ont pas évolués (using, std::cout enchaînés, protection de std::cin). Pour plus de détails relire les sujets précédents.
Ok merci de ta réponse comme d'habitude, ça faisait longtemps que j'ai pas coder et ducoup j'ai oublier ce détail. et désolé si j'ai pu t'offenser ou quoi avec ton pseudo enfin bref merci A+