Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#14

Re: Monatskürzel "Jan".."Dec" in 01..12

  Alt 30. Jan 2004, 06:41
@choose, deine Annahme das das Runterzählen schneller ist ist einfach falsch.

1.) Da du Result als Zählervariable benutzt verhinderst du das der Compiler den Code besser optimieren kann
2.) WENN der Compiler optimieren kann dann würde er schnelleren Code mit einer simplen for to Schleife erzeugen. In diesem Beispiel würde er Assemblercode erzeugen der auch gegen Null überprüft
3.) Eine BottomUp Schleife ist Cache-unfreundlich

besser ist folgender Code
Delphi-Quellcode:
var
  I: Integer;
begin
  for I := Low() to High() do
    if Data[I] = XYZ then
    begin
      Result := I;
      Exit;
    end;
end;
Gruß Hagen
  Mit Zitat antworten Zitat