Instanz-Variablen sind bereits Referenzen. So wird es funktionieren:
Delphi-Quellcode:
procedure Test(
var aObject: TMyClass);
begin
aObject := TMyClass.Create;
aObject.Wert := 1234;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
MyObject: TMyClass;
AnderesObjekt: TMyClass;
begin
Test(MyObject);
Caption := MyObject.Wert.ToString;
// OK, 1234
AnderesObjekt := TMyClass.Create;
AnderesObjekt.Wert := 9876;
Caption := MyObject.Wert.ToString;
// Nun immer noch 1234...
AnderesObjekt.Free;
MyObject.Free;
// keine AV
end;