Delphi pasando parámetros por referencia o por valor / copia

Context 1

var text:String;

text:='hello';

myFunc(text);

Context2

function myFunc(mytext:String);
var textcopy:String;
begin

    textcopy:=mytext;

end;

myFunc en Context2 se llamó desde Context1, la variable localmytext apunta a una memoria fuera del Context2? o lamytext tienen su propio espacio de memoria dentro del alcance y se rellenan / copian con el mismo contenido detext? Probablemente me estoy perdiendo algo realmente básico, porque estoy obteniendo unaaccess violation error.

¿Hay alguna forma de especificar explícitamente si una función debe recibir parámetros por referencia o por valor, copiando luego como en C? No estoy seguro de cómo lo estoy haciendo.

Respuestas a la pregunta(6)

Su respuesta a la pregunta