Einzelnen Beitrag anzeigen

Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Compiler optimiert nicht richtig

  Alt 12. Feb 2007, 18:12
Zitat von igel457:
ich habe ein komisches Problem mit dem Compiler. Und zwar wird bei folgendem Code einiges wegoptimiert:
Was steht hier?
Delphi-Quellcode:
for i := 0 to FEngine.FList.Count - 1 do
begin
  FEngine.FList[i].Collision2;
  FEngine.CollisionDone := true;
  if FEngine.CollisionDone then
  begin
    break; <--- Diese Zeile wird nicht compiliert
  end;
end;
Das steht da:
Delphi-Quellcode:
if Engine.List.Count > 0 then
begin
  Engine.List[0].Collision2;
  Engine.CollisionDone := true;
end;
btw: Warum benutzt du überall die Felder direkt? Eine property, die mit dem Feld als read-clause deklariert wird, hat keinerlei Overhead gegenüber dem Feld direkt.
Aber auf der anderen Seite hast du später die Möglichkeit den Getter zu ändern. Außerdem sehen die ganzen FXXX furchtbar hässlich aus.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat