E2197 Konstantenobjekt kann nicht als Var-Parameter übergeben werden (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Diese Fehlermeldung erscheint, wenn Sie versuchen, eine Konstante als einen var- oder out-Parameter für eine Funktion oder Prozedur zu senden.

Das folgende Beispiel verwendet eine Konstante als var-Parameter.


program Project1;

uses
  SysUtils;

const
  c: Integer = 2;

procedure MyProc(var c: Integer);
begin

end;

begin
  MyProc(c);                (*Hier die Fehlermeldung*)
end.

Zur Behebung dieses Problems können Sie eine andere Variable deklarieren und den Wert der Konstante der Variable zuweisen.


program Project2;

uses
  SysUtils;

const
  c: Integer = 2;

var
  a: Integer;

procedure MyProc(var a: Integer);
begin

end;

begin
  a := c;
  MyProc(a);                (*Das funktioniert*)
end.