Thema: Delphi Konstantenparameter

Einzelnen Beitrag anzeigen

Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#7

AW: Re: Konstantenparameter

  Alt 4. Aug 2011, 15:51
Das Thema interessierte mich so sehr, daß ich mich damit beschäftigte und hier trotz des Alters der Diskussion etwas dazu beitragen möchte:

weiß jmd. ob es nicht eh aut. eine Optimierung durch den Compiler gibt?
Anscheinend ja. Ich probierte es mit einem sehr langen String, der "einfachsten" Datenstruktur, die man sehr groß und damit sehr speicherbeanspruchend werden lassen kann. Solang in der aufgerufenen Prozedur die übergebene Variable nicht per Ergibtanweisung verändert wird, solang wird anscheinend auch kein Abbild der Datenstruktur erzeugt - zumindest läßt diese Folgerung der im Taskmanager angzeigte Speicherbedarf zu. Erst unmittelbar vor der Ergibtanweisung schnellt der Speicherbedarf in die Höhe, was auf ein unmittelbar zuvor erstelltes Duplikat der speicherbeanspruchenden Datenstruktur hindeutet.

Wenn man also die übergebene (in die Routine "hineinfließende") Variable nicht verändert, ist es demnach egal, ob man sie einfach oder mit const gegen Veränderung abgesichert übergibt.

Diese Beobachtung machte ich bereits mit Delphi 2.0 (und 3.0).
  Mit Zitat antworten Zitat