AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Löschen in einer "for in" Schleife

Ein Thema von dominikkv · begonnen am 14. Dez 2013 · letzter Beitrag vom 15. Dez 2013
 
Furtbichler
(Gast)

n/a Beiträge
 
#7

AW: Löschen in einer "for in" Schleife

  Alt 14. Dez 2013, 21:21
Ja das ist in der Ausführung die schnellste Variante, allerdings ist Schnelligkeit nicht immer ausschlaggebend. In meinem Fall habe ich so um die 100 Einträge in der Liste, da lege ich mehr Wert auf Lesbarkeit des Codes, außerdem spare ich somit eine Variable
Ich frage mich wirklich, was daran schlecht lesbar ist:
Delphi-Quellcode:
for i:=Liste.Count-1 downto 0 do
  if Bedingung(Eintrag[i]) Then
    Liste.Delete(i);
Oder findest Du die for-Schleife etwa 'old-school'? Den Umweg über ein Array zu gehen ist ja auch nicht gerade direkt, kurz und knapp, oder? Wenn Du das lesbar machen willst, dann benutze Refactoring;
Delphi-Quellcode:
...
LoescheBestimmteElementeAusDer(Liste);
...
Beim Lesen des Codes kann man ja wohl nicht anders, als zu lesen, was dort passiert. Da muss man noch nicht einmal großartig in die Routine reinspringen, weil das ja im Kontext der o.g. Routine sekundär sein dürfte.
Delphi-Quellcode:
Procedure LoescheBestimmteElementeAusDer(Liste : TListe);
var
  i : Integer;
Begin
  for i:=Liste.Count-1 downto 0 do
    if Bedingung(Eintrag[i]) Then
      Liste.Delete(i);
End;
  Mit Zitat antworten Zitat
 

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:44 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-2025 by Thomas Breitkreuz