Farbe := Farbe + 1;
schreibt man nicht, man schreibt Inc(Farbe);
. Macht auch ein bisschen was aus.
Das ist aber wohl eher ein Mythos. So sieht der mit Delphi 11
Win32 ohne Overflow-Checking erzeugte Code aus:
Delphi-Quellcode:
Project861.dpr.8: Farbe := 0;
0040A104 33C0 xor eax,eax
0040A106 A388F54000 mov [$0040f588],eax
Project861.dpr.9: Farbe := Farbe + 1;
0040A10B FF0588F54000 inc dword ptr [$0040f588]
Project861.dpr.10: Inc(Farbe);
0040A111 FF0588F54000 inc dword ptr [$0040f588]
Project861.dpr.11: end.
0040A117 E8B0BBFFFF call @Halt0
Hatte das aus der Doku geschlossen:
Zitat:
Auf manchen Plattformen erzeugt Inc u. U. hochoptimierten Maschinencode, der sich besonders für enge Schleifen eignet.
Ist dann wohl falsch.