Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#35

Re: Was ist schneller, Funktion oder Prozedure?

  Alt 28. Okt 2005, 21:43
Zitat von dizzy:
Das wäre dann aber grober Unfug, es sei denn D2005 tut auf einmal etwas ganz neues: Lokale Variablen mit 0 (nil) initialisieren. Ist dem so? Warum erkennt der Optimizer dann nicht auch, dass in der Prozedur x nur eine Null zugewiesen wird, und optimiert auch diesen Aufruf weg? Sowas meinte ich mit inkonsequent.
Nicht wenn der Optimizer erkennt, dass ergy danach überhaupt nicht mehr benötigt wird - allerdings sollte er dann eigentlich auch erkennen, dass das für ergx ebenfalls gilt.

Nichtsdestotrotz - Delphi optimiert nicht so, wie es z.B. ein optimierender C- oder C++-Compiler tut. Dieser ist normalerweise auch dafür ausgelegt, total stupiden Code (wie in unserem Beispiel) zu optimieren - wenn sein Input nämlich von anderen Programmen wie lex oder yacc generiert wird, dann kann es sein, dass wirklich 10 mal "x = 10;" untereinander steht.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat