Ist es üblich, Schleifen als "goto" [geschlossen] zu "missbrauchen"

8

Wenn es im Code viele if-Klauseln gibt und die Ausführung des Codes bei einem vorherigen Fehler nicht sinnvoll ist, ist es OK, dafür eine Ein-Zyklus-Schleife zu verwenden? Einfach um den Block mit einer Pause verlassen zu können? So:

%Vor%     
Valentin Heinitz 19.09.2016, 11:49
quelle

2 Antworten

7

Ja, das ist idiomatisch, auch wenn es vielleicht nicht die beabsichtigte Verwendung für eine do while -Schleife war. Der Quellcode für den Linux-Kernel nutzt dies.

Da ist nichts unklar: while(false) macht genau das, was auf der Zunge liegt.

    
Bathsheba 19.09.2016, 11:51
quelle
3

Ja, es ist eine gängige Technik, um eine tiefe Verschachtelung zu vermeiden, und eigentlich besser als goto; .

Aus Sicht der Lesbarkeit ist es besser als goto . Der Gültigkeitsbereich und der Codefluss der Schleife sind gut definiert, und Sie müssen nicht die entsprechenden Bezeichnungen der goto -Anweisungen suchen, die nicht unbedingt darunter erscheinen.

    
πάντα ῥεῖ 19.09.2016 11:51
quelle

Tags und Links