Zitat von
mkinzler:
Objkete in Delphi sind Referenzen (also Zeiger). bei primitiven typen kommt es an, wie die Prozeduren/Funktionen deklariert sind.
Bei Objektparametern kommt es genauso darauf an. Mit var oder out sind diese keine Referenzen auf Instanzen mehr, sondern Referenzen auf Referenz - ein ebenso wichtiger Unterschied wie bei Value-Types.
@mojo: Wertetypen sind grundsätzlich und sprachenunabhängig alle Typen, die auf dem Stack liegen (bei Referenztypen landet stattdessen nur die Adresse als Int auf dem Stack, die Daten liegen auf dem Heap). Bei Pascal wären das primitive Typen, Records, statische Arrays und
Rücksprungadressen ^^; in einem speziellen, nicht gerade oft wichtigen Sinne auch Methodenzeiger . Strings sind zwar Referenzen, verhalten sich aber wie Wertetypen.