Ma condition n'est pas comme ce que je souhaite
djun123
Messages postés
5
Statut
Membre
-
djun123 Messages postés 5 Statut Membre -
djun123 Messages postés 5 Statut Membre -
Bonjour,
je suis un débutant en C++. J'apprend le c++ par moi-même à l'aide des tutoriel. Je suis en train de faire mon tout premier chat. Mais, j'ai un problème qui m'est survenu. C'est que dans ma condition :
Si le nom du du destinataire n'est pas celui du compte ET que le nom du destinateur n'est pas celui du compte, j'arrête la fonction. Le problème c'est que si une des 2 conditions est vrai, la fonction s'arrête. Pourtant, je veux que c'est si ces 2 conditions sont vrai pour que la fonction puisse s'arrêter. Merci.
je suis un débutant en C++. J'apprend le c++ par moi-même à l'aide des tutoriel. Je suis en train de faire mon tout premier chat. Mais, j'ai un problème qui m'est survenu. C'est que dans ma condition :
QMessageBox::information(this,"test","destinateur = "+nomDestinateur); // Verifier nom destinateur
QMessageBox::information(this,"test","destinataire = "+nomDestinataire); // verifier nom destinataire
if(nomDestinataire!=pseudo->text()&&nomDestinateur!=pseudo->text())
{
QMessageBox::information(this,"test","erreur incomprehensible"); // Il me sert à détecter l'erreur
return;
}
Si le nom du du destinataire n'est pas celui du compte ET que le nom du destinateur n'est pas celui du compte, j'arrête la fonction. Le problème c'est que si une des 2 conditions est vrai, la fonction s'arrête. Pourtant, je veux que c'est si ces 2 conditions sont vrai pour que la fonction puisse s'arrêter. Merci.
A voir également:
- Ma condition n'est pas comme ce que je souhaite
- Excel cellule couleur si condition texte - Guide
- Evariste souhaite telecharger le logiciel mozilla firefox ✓ - Forum Microsoft Edge / Internet Explorer
- Excel condition ou - Guide
- Colombe souhaite utiliser cette image comme illustration. quel texte doit-elle ajouter pour attribuer correctement la photographie à son auteur ? - Forum Matériel & Système
- Je ne suis pas un robot confidentialité - conditions ✓ - Forum Windows 8 / 8.1
3 réponses
Attention aux confusions entre exit et return: return sert à renvoyer une valeur, alors qu'exit permet d'arrêter l'exécution du programme. Si tu veux juste sortir de ta fonction, je te conseille de faire un return (0) ;)
Pour ce qui est de ton problème, essaye de rajouter des parenthèses. Personnellement, je l'aurais écrit comme cela:
À priori, c'est tout ce que je peux voir. Sinon, il peut s'agir du retour de tes fonctions qui va causer l'entrée systématique dans ta condition. Essaye d'exécuter pas à pas avec un debugger :P
Pour ce qui est de ton problème, essaye de rajouter des parenthèses. Personnellement, je l'aurais écrit comme cela:
if((nomDestinataire != pseudo->text()) && (nomDestinateur != pseudo->text()))
{
QMessageBox::information(this,"test","erreur incomprehensible"); // Il me sert à détecter l'erreur
return;
}
À priori, c'est tout ce que je peux voir. Sinon, il peut s'agir du retour de tes fonctions qui va causer l'entrée systématique dans ta condition. Essaye d'exécuter pas à pas avec un debugger :P
Je ne peux pas faire return(0) parce que je suis dans une fonction void. Puis, même avec les paranthèse rien ne marche encore.
if( (nomDestinataire != pseudo->text()) && (nomDestinateur != pseudo->text()) )
{
QMessageBox::information(this,"test",nomDestinataire+"="+pseudo->text()+" "+nomDestinateur+"="+pseudo->text());
QMessageBox::information(this,"test","erreur incomprehensible");
return;
}