Continue

Überspringt den Rest der aktuellen Wiederholung einer Schleifenanweisung und beginnt eine neue.

Continue LoopLabel

Parameter

LoopLabel

Wenn weggelassen oder 1, gilt diese Anweisung für die innerste Schleife, von der die Anweisung umschlossen ist. Andernfalls geben Sie an, für welche Schleife diese Anweisung gelten soll; entweder der Name eines Labels oder die Nummer einer Verschachtelungsebene. Wenn ein Label angegeben ist, muss es direkt auf eine Schleifenanweisung verweisen.

LoopLabel muss ein konstanter Wert sein - Variablen und Ausdrücke werden nicht unterstützt, mit Ausnahme einer direkt geschriebenen Zahl oder einer in Anführungszeichen gesetzten Zeichenkette, die mit runden Klammern umschlossen ist. Zum Beispiel: continue("outer")

Bemerkungen

Continue ist dem Verhalten nach das gleiche wie, als würde das Skript die geschweifte Endklammer einer Schleife erreichen:

  1. A_Index wird um 1 erhöht.
  2. Der Rest des Schleifenkörpers wird übersprungen.
  3. Die Bedingung der Schleife (falls vorhanden) wird überprüft, ob sie erfüllt ist. Ist dies der Fall, beginnt eine neue Wiederholung, andernfalls endet die Schleife.

Es ist ratsam, Break und Continue anstelle von Goto zu verwenden, da sie in der Regel die Lesbarkeit und Wartbarkeit eines Skripts verbessern.

Break, Loop, Until, While-Schleife, For-Schleife, Blöcke, Labels

Beispiele

Zeigt 5 Mitteilungsfenster an, eines für jede Zahl von 6 bis 10. Die Continue-Anweisung in den ersten 5 Wiederholungen bewirkt, dass die MsgBox-Zeile darunter übersprungen wird.

Loop 10
{
    if (A_Index <= 5)
        continue
    MsgBox A_Index
}

Überspringt von einer inneren Schleife heraus den Durchlauf der äußeren Schleife.

outer:
Loop 3
{
    x := A_Index
    Loop 3
    {
        if (x*A_Index = 4)
            continue outer  ; Äquivalent zu continue 2 oder goto continue_outer.
        MsgBox x "," A_Index
    }
    continue_outer: ; Für goto.
}