Récuperer résultat d'une fonction dans un .h
Résolu
Maz
-
Maz -
Maz -
Bonjour,
Je suis novice en c++ et je tente de récuperer une valeur retourner depuis un header.
Voici le code de mon header :
HEADER :
int affichage(int choix)
{
int resultat;
cout << "1.Connexion \n" << "2.Inscription \n";
cin >> choix;
if(choix == 1)
{
resultat = 1;
}
else
{
resultat = 2;
}
return resultat;
}
Mon but etabt de récuperer "resultat" dans le fichier .cpp pour décider de lancer la fonction Connexion ou Inscription selon le choix de l'utilisateur.
CPP :
int main(int argc, char *argv[])
{
int choix, choixFait,loginSaisi;
string nom, mdp;
affichage(choix);
/*
A partir d'ici je lance ma fonction affichage, et je souhaiterais dire que si la fonction affichage me renvoi 1 alors je lance ma fonction connexion(user,mdp);
*/
D'avance, merci.
Je suis novice en c++ et je tente de récuperer une valeur retourner depuis un header.
Voici le code de mon header :
HEADER :
int affichage(int choix)
{
int resultat;
cout << "1.Connexion \n" << "2.Inscription \n";
cin >> choix;
if(choix == 1)
{
resultat = 1;
}
else
{
resultat = 2;
}
return resultat;
}
Mon but etabt de récuperer "resultat" dans le fichier .cpp pour décider de lancer la fonction Connexion ou Inscription selon le choix de l'utilisateur.
CPP :
int main(int argc, char *argv[])
{
int choix, choixFait,loginSaisi;
string nom, mdp;
affichage(choix);
/*
A partir d'ici je lance ma fonction affichage, et je souhaiterais dire que si la fonction affichage me renvoi 1 alors je lance ma fonction connexion(user,mdp);
*/
D'avance, merci.
A voir également:
- Récuperer résultat d'une fonction dans un .h
- Fonction si et - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
- Resultat foot - Télécharger - Vie quotidienne
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment récupérer un compte facebook piraté - Guide
2 réponses
Bonjour,
Ca ne sert pas du tout à ça un header. Dans le header, on ne met pas le code mais simplement la déclaration des prototypes des fonctions. D'ailleurs, on ne compile pas le header...
Il faut donc que tu déportes ton code dans un autre fichier .cpp. Et là tu appelles ta fonction après #include du header.
Ca ne sert pas du tout à ça un header. Dans le header, on ne met pas le code mais simplement la déclaration des prototypes des fonctions. D'ailleurs, on ne compile pas le header...
Il faut donc que tu déportes ton code dans un autre fichier .cpp. Et là tu appelles ta fonction après #include du header.
Bonsoir et merci pour ta réponse,
Donc si je comprends bien, cela me donnerais quelque chose dans ce genre :
Fonction.cpp :
int affichage(int choix)
{
int resultat;
cout << "1.Connexion \n" << "2.Inscription \n";
cin >> choix;
if(choix == 1)
{
resultat = 1;
}
else
{
resultat = 2;
}
return resultat;
}
MAIN.cpp :
int main(int argc, char *argv[])
{
int choix, choixFait,loginSaisi;
string nom, mdp;
affichage(choix);
HEADER :
#ifndef FONCTION_H_INCLUDED
#define FONCTION_H_INCLUDED
int affichage(int choix);
int connexionLogin(string nom, string mdp);
#endif // FONCTION_H_INCLUDED
C'est bien ça?
Donc si je comprends bien, cela me donnerais quelque chose dans ce genre :
Fonction.cpp :
int affichage(int choix)
{
int resultat;
cout << "1.Connexion \n" << "2.Inscription \n";
cin >> choix;
if(choix == 1)
{
resultat = 1;
}
else
{
resultat = 2;
}
return resultat;
}
MAIN.cpp :
int main(int argc, char *argv[])
{
int choix, choixFait,loginSaisi;
string nom, mdp;
affichage(choix);
HEADER :
#ifndef FONCTION_H_INCLUDED
#define FONCTION_H_INCLUDED
int affichage(int choix);
int connexionLogin(string nom, string mdp);
#endif // FONCTION_H_INCLUDED
C'est bien ça?
D'accord, je saisi mieux le concept, merci.
Mais j'ai du mal avec les passages par réference ... Pourrais-tu me montrer la démarche pour ma configuration actuelle?
Je veux lancer la fonction affichage(choix); et selon le resultat qu'elle retourne lancer une autre fonction, pour ce cas présent afficher un cout<<"connexion"; si ma fonction retourne 1 et cout<<"Inscription"; si elle retourne 0, c'est juste a titre d'exemple.
Mais j'ai du mal avec les passages par réference ... Pourrais-tu me montrer la démarche pour ma configuration actuelle?
Je veux lancer la fonction affichage(choix); et selon le resultat qu'elle retourne lancer une autre fonction, pour ce cas présent afficher un cout<<"connexion"; si ma fonction retourne 1 et cout<<"Inscription"; si elle retourne 0, c'est juste a titre d'exemple.
Bonjour,
Est-ce normale que lorsque je déclare des varibles stoquant le résultat de mes fonctions, ça lance la fonction ?
Au début de mon main, je déclare :
int choix;
int main(int argc, char *argv[])
{
affichage(choix); // je lance ma fonction
int choixFait =affichage(choix);
/* J'initialise ma variable, mais ça me lance la fonction affichagechoix); une deuxième fois... et si je la déclare avant le main ou même avant ma fonction affichage(choix); cela ne change rien...*/
Est-ce normale que lorsque je déclare des varibles stoquant le résultat de mes fonctions, ça lance la fonction ?
Au début de mon main, je déclare :
int choix;
int main(int argc, char *argv[])
{
affichage(choix); // je lance ma fonction
int choixFait =affichage(choix);
/* J'initialise ma variable, mais ça me lance la fonction affichagechoix); une deuxième fois... et si je la déclare avant le main ou même avant ma fonction affichage(choix); cela ne change rien...*/