Als «goto» getaggte Fragen

11
Zu welchen Fehlern führen "goto" -Anweisungen? Gibt es historisch bedeutsame Beispiele?
Ich verstehe, dass außer zum Ausbrechen von in Schleifen verschachtelten Schleifen; Die gotoAussage wird als fehleranfälliger Programmierstil umgangen und verleumdet, um niemals verwendet zu werden. Alt Text: "Neal Stephenson findet es niedlich, seine Labels 'dengo' zu nennen" Siehe den Original-Comic unter: http://xkcd.com/292/ Weil ich das früh gelernt habe; Ich habe …

12
Ist dies ein anständiger Anwendungsfall für goto in C?
Ich zögere wirklich, dies zu fragen, weil ich nicht "Debatten, Argumente, Umfragen oder erweiterte Diskussionen anregen" möchte, aber ich bin neu in C und möchte mehr Einsicht in die in der Sprache verwendeten Muster gewinnen. Ich habe kürzlich eine gewisse Abneigung gegen den gotoBefehl gehört, aber ich habe auch kürzlich …

12
Vermeiden Sie das "goto" -Voodoo?
Ich habe eine switchStruktur, die mehrere Fälle zu behandeln hat. Das switchfunktioniert über ein, enumdas die Ausgabe des doppelten Codes durch kombinierte Werte aufwirft: // All possible combinations of One - Eight. public enum ExampleEnum { One, Two, TwoOne, Three, ThreeOne, ThreeTwo, ThreeOneTwo, Four, FourOne, FourTwo, FourThree, FourOneTwo, FourOneThree, FourTwoThree, …



7
Rechtfertigt dies goto-Aussagen?
Ich bin vor einer Sekunde auf diese Frage gestoßen und ziehe einen Teil des Materials von dort ab: Gibt es einen Namen für das 'break n'-Konstrukt? Dies scheint eine unnötig komplexe Möglichkeit zu sein, das Programm anweisen zu müssen, aus einer doppelt verschachtelten for-Schleife auszubrechen: for (i = 0; i …

7
Best Practice, um innerhalb einer verschachtelten Schleife fortzufahren?
Hier ist ein vereinfachtes Beispiel. Grundsätzlich werden Zeichenfolgen aus einer Zeichenfolgenliste überprüft. Wenn die Prüfung erfolgreich ist, wird diese Zeichenfolge ( filterStringOut(i);) entfernt, und es ist nicht mehr erforderlich, andere Prüfungen fortzusetzen. Also continuezum nächsten String. void ParsingTools::filterStrings(QStringList &sl) { /* Filter string list */ QString s; for (int i=0; …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.