Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - call-by-name und call-by-reference


HB+ - So 30.01.05 15:30
Titel: call-by-name und call-by-reference
Hallo,

kann mir jemand den Unterschied und die Anwendung von call-by-name und call-by-reference erklären?

HB+


Moderiert von user profile iconChristian S.: Topic aus Sonstiges verschoben am So 30.01.2005 um 14:32


BenBE - So 30.01.05 22:22

Meinst Du beim Aufruf von Routinen?

Call-by-Name: Heißt eigentlich Call-By-Value, beim Aufruf wird eine Kopie des eigentlichen Wertes auf dem Stack abgelegt.
Call-by-Ref: Beim Aufruf wird der eigentliche Wert, bzw. ein Zeiger auf diesen übergeben, so dass das Original bearbeitet werden kann.


UC-Chewie - So 30.01.05 23:29

BenBE hat folgendes geschrieben:
Call-by-Name: Heißt eigentlich Call-By-Value, beim Aufruf wird eine Kopie des eigentlichen Wertes auf dem Stack abgelegt.


Naja, es muss nicht unbedingt der Stack sein, bei Pascal-Routinen z.B. werden ja Parameter zunächst per Register übergeben.