Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.049 Beiträge
Delphi 12 Athens
|
AW: Problem wenn Compiler Optimierung aktiv
25. Jul 2014, 13:10
Ohne Optimierung ist die Lebensdauer von lokalen Variablen fast immer von BEGIN bis END.
Mit Optimierung sagt sich Delphi "vor der ersten und nach der letzen Benutzung brauch ih diese Variable eh nicht mehr, also fliegt sie raus. und wenn ich glück hab, dann kann das ich auch nur mal kurz in ein Register schupsen, ohne daß ich wertvollen Stack dafür verschwenden muß.".
(es gibt nur ein paar gemanagte Typen, die immer etwas aus der Reihe tanzen, z.B. lange Strings, dynArrays und Interfaces)
Und wenn man die Warnungen beachtet, dann verändert die Optimierung das Verhalten eigentlich nicht.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
Geändert von himitsu (25. Jul 2014 um 13:36 Uhr)
|