E2197 Un objet constante ne peut être passé comme paramètre Var (Delphi)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Messages d'erreur et d'avertissement (Delphi)

Ce message d'erreur apparaît quand vous tentez d'envoyer une constante en tant que paramètre var ou out d'une fonction ou d'une procédure.

L'exemple suivant utilise une constante en tant que paramètre var.


program Project1;

uses
  SysUtils;

const
  c: Integer = 2;

procedure MyProc(var c: Integer);
begin

end;

begin
  MyProc(c);                (*Message d'erreur ici*)
end.

Pour résoudre ce type de problème, vous pouvez déclarer une autre variable et assigner la valeur de la constante à la variable.


program Project2;

uses
  SysUtils;

const
  c: Integer = 2;

var
  a: Integer;

procedure MyProc(var a: Integer);
begin

end;

begin
  a := c;
  MyProc(a);                (*Ceci est valable*)
end.