![]() |
Doppelte Schleife verlassen
Hi,
folgender Code aktuell:
Delphi-Quellcode:
Gibt es hierbei eine Möglichkeit, das changed "wegzuoptimieren"? Also ein Break, das sowohl die if, als auch die While Schleife abbricht?var changed: boolean; varCurrActClass: TLastActionClass; i: integer; begin changed := True; while changed do begin changed := False; for i := 0 to FLastActionList.Count -1 do begin varCurrActClass := FLastActionList.Items[i]; if (...) then begin FLastActionList.Remove(varCurrActClass); FLastActionList.TrimExcess; changed := True; break; end; if (...) then begin FLastActionList.Remove(varCurrActClass); FLastActionList.TrimExcess; changed := True; break; end; end; end; end; Viele Grüße, Martin |
AW: Doppelte Schleife verlassen
Zitat:
Nein sowas gibt es nicht. Es gibt nicht wirklich eine andere Möglichkeit als sich zu merken ob die äußeren schleifen abgebrochen werden sollen. |
AW: Doppelte Schleife verlassen
Oh, ja klar, die for und while Schleife :roll:
Danke deiner Antwort! Viele Grüße |
AW: Doppelte Schleife verlassen
Goto :duck:
|
AW: Doppelte Schleife verlassen
Zitat:
|
AW: Doppelte Schleife verlassen
Zitat:
Gruß K-H |
AW: Doppelte Schleife verlassen
Du kannst beide Schleifen in eine separate Methode verlagern und diese dann bei Bedarf mit Exit verlassen.
|
AW: Doppelte Schleife verlassen
Zitat:
Ist das jetzt so gewollt oder war nur deine Frage falsch formuliert? |
AW: Doppelte Schleife verlassen
Zitat:
Sherlock |
AW: Doppelte Schleife verlassen
Jupp, hier geht das Exit, da sowieso die Funktion verlassen wird, nach den Schleifen.
Ihr könnt ja gern man bei Emba den Vorschlag einreichen das Break und Continue zu ändern. (mein uralter Vorschlag im QC wurde ja nicht beachtet :cry:) z.B.
Delphi-Quellcode:
für das Verlassen/Fortsetzen von den inneren zwei Schleifen.
Break 2;
Continue 2; Und für For-Schleifen eventuell auch
Delphi-Quellcode:
für "Breche alle Schleifen ab, bis hin zur For-Schleife mit der i1-Variable".
for i1 := 0 to 10 do begin
for i2 := 0 to 10 do begin ... Break i1; end; end; Eventuell kann man die Repeat- und Whileschleifen auch "benennen" und dann
Delphi-Quellcode:
.
Break DerName;
Und dann hätte ich auch gern noch ein "Self" für With-Blöcke, oder den "Alias", wie es ihn in tausenden anderen Sprachen gibt. sogar in ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz