so beenden Sie nested loops
ich habe so etwas wie
while(playAgain==true)
{
cout<<"new game"<<endl; //i know 'using namespace std;' is looked down upon
while(playerCard!=21)
{
*statements*
if(decision=='n')
{
break
}
...
}
}
aber das break bricht nur aus der ersten while-Schleife, wenn ich brechen will von den beiden Schleifen
setzen Sie ein flag, überprüfen Sie es, wenn wieder mal Pause....
Die Antwort finden Sie hier: stackoverflow.com/questions/1257744/...
Man könnte ein
Die Antwort finden Sie hier: stackoverflow.com/questions/1257744/...
Man könnte ein
goto
Aussage, die springt zu einem label außerhalb der Schleife.... natürlich im Scherz 🙂. Die beste Lösung ist, um zu vermeiden, die geschachtelte wenn (Die, wenn mit der break
), und stellen Sie die Bedingung (decission == 'n'
) in den zwei Schleifen.InformationsquelleAutor gr33kbo1 | 2013-09-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht Kochen spaghetti und ziehen Sie Ihre Schleifen in der Funktion:
diese Zersetzung wird auch die Ausbeute, sauberer code, da anstatt Hunderte von Zeilen hässlicher prozeduraler code, haben Sie nette Funktionen auf verschiedenen Ebenen der Abstraktion.
foo()'s
ArgumenteInformationsquelleAutor LihO
Verwenden Sie die goto-Funktion:
InformationsquelleAutor cpp
Grundsätzlich gibt es zwei Möglichkeiten zu gehen.
Fügen Sie die Bedingung überprüfen, in der äußeren Schleife.
while ((playAgain==true) && (decision != '\n'))
Verwenden Sie einfach
goto
. Menschen sind oft gesagt, niegoto
als wenn es ein monster. Aber ich bin nicht abgeneigt, es zu benutzen, exit-multiple loops. Es ist sauber und klar in dieser situation.InformationsquelleAutor Eric Z
InformationsquelleAutor P0W
Diese Lösung ist spezifisch zu Ihrem Fall. Wenn die Entscheidung des Benutzers ist, 'n', will er sich nicht, wieder zu spielen. So setzen Sie einfach
playAgain
zufalse
und dann brechen. Äußere Schleife unterbrochen werden, automatisch.InformationsquelleAutor thefourtheye
Wenn Sie nicht haben, um zu vermeiden
goto
- Anweisung können Sie schreibenInformationsquelleAutor qsona