In den Folge beiden Code-Snippets, gibt es tatsächlich verschiedene jede entsprechend der Geschwindigkeit der Erstellung oder Laufen?Wird sofort fortgesetzt?
for (int i = 0; i < 50; i++)
{
if (i % 3 == 0)
continue;
printf("Yay");
}
und
for (int i = 0; i < 50; i++)
{
if (i % 3 != 0)
printf("Yay");
}
, persönlich in den Situationen, in denen es viel mehr als eine print-Anweisung ist, ich war die erste Methode verwendet die Menge der Einbuchtung für den Code enthält, zu reduzieren, . Ich habe mich eine Zeitlang gewundert, also habe ich mich gefragt, ob es tatsächlich eine andere Wirkung als visuell hat.
Antwort Alf (i in den Kommentaren nicht Code bekommen konnte arbeiten ...)
Präzisere meiner Nutzung ist etwas entlang der Linien von einer „handleObjectMovement“ Funktion, die
for each object
if object position is static
continue
deal with velocity and jazz
umfassen würde
mit im Vergleich
for each object
if object position is not static
deal with velocity and jazz
daher nicht Rückkehr mit mir. Im Wesentlichen „zu dieser Iteration, wenn es nicht relevant ist, bewegen sich auf“
Ich denke, Umgang mit trivialen Fällen oder Fehler Fällen zuerst in einer Funktion, mit 'return' zu ** Kaution **, ist in Ordnung. "Fortsetzen" bedeutet jedoch, dass der Leser des Codes zusätzliche Analyse verwenden muss. Denken Sie daran, dass der Quellcode schreiben, ist nicht etwa an den Compiler zu kommunizieren, was es tun sollte, so viel wie die Kommunikation zu anderen oder Ihr später selbst, was Ihre * Absicht * ist. –
Ein guter Compiler sollte die äquivalente Quelle in denselben Assemblercode optimieren. Ob das tatsächlich passiert, hängt von zu vielen Dingen ab, die man im Voraus sicher wissen muss. Warum überprüfen Sie es nicht einfach selbst? Untersuchen Sie die generierte Baugruppe und/oder messen Sie die Zeiten und Sie erhalten Ihre Antwort. –
Zwei Gründe Branko, das erste ist schlecht, aber das zweite, das ich fühle, ist ziemlich gut: P 1) Ich bin faul 2) Es ist nützlich, diese Art von Fragen nur ein Google weg zu haben. Jetzt hat jemand, der sich wundert, dass er eine SO-Seite hat, zu der er gehen kann. – Randomman159