Einzelnen Beitrag anzeigen

Popov
(Gast)

n/a Beiträge
 
#1

Wieso funktioniert das hier mit OUT?

  Alt 17. Dez 2012, 12:13
Nach meinem Verständnis übergeben mit out deklarierten Variablen keine Werte, bzw. werden diese vorher gelöscht. Wieso funktioniert das hier?

Delphi-Quellcode:
type
  Txy = (x, y);

procedure Test(out xy: Txy);
begin
  if xy = x then ShowMessage('x') else ShowMessage('y');
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  xy: Txy;
begin
  xy := y; // mal x, mal y
  Test(xy);
end;
//Edit:

Weil es keine Variable ist und nur die Adresse übergeben wird?

Geändert von Popov (17. Dez 2012 um 12:16 Uhr)
  Mit Zitat antworten Zitat