E2081 Affectation à la variable de boucle FOR '%s' (Object Pascal)

De Appmethod Topics
Aller à : navigation, rechercher

Remonter à Messages d'erreur et d'avertissement (Object Pascal) - Index

L'affectation d'une valeur à la variable de contrôle d'une boucle for est incorrecte à l'intérieur de la boucle.

Si le but est de quitter prématurément la boucle, utilisez une instruction break ou goto.


program Produce;

var
  I: Integer;
  A: array[0..99] of Integer;
begin
  for I := 0 to 99 do begin
    if A[I] = 42 then
      I := 99;
  end;
end.

Dans ce cas, le programmeur a pensé que l'affectation de 99 à I provoquera la sortie du programme de l'intérieur de la boucle.


program Solve;

var
  I: Integer;
  A: array[0..99] of Integer;
begin
  for I := 0 to 99 do begin
    if A[I] = 42 then
      Break;
  end;
end.

L'utilisation d'une instruction break est un moyen plus propre pour sortir d'une boucle for.