E2132 Propriété par défaut doit être une propriété de tableau (Delphi)

De RAD Studio
Aller à : navigation, rechercher

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

La propriété par défaut que vous avez spécifiée pour la classe n'est pas une propriété de tableau. Les propriétés par défaut doivent être des propriétés array.



program Produce;

  type
    Base = class
      function GetV : Char;
      procedure SetV(x : Char);

      property Data : Char read GetV write SetV; default;
    end;

  function Base.GetV : Char;
  begin GetV := 'A';
  end;

  procedure Base.SetV(x : Char);
  begin
  end;

begin
end.

Lors de la spécification d'une propriété par défaut, vous devez vérifier qu'elle est conforme à la syntaxe des propriétés array. La propriété 'Data' du code ci-dessus spécifie un type 'Char' plutôt qu'un type array.



program Solve;

  type
    Base = class
      function GetV(i : Integer): Char;
      procedure SetV(i : Integer; const x : Char);

      property Data[i : Integer]: Char read GetV write SetV; default;
    end;

  function Base.GetV(i : Integer): Char;
  begin GetV := 'A';
  end;

  procedure Base.SetV(i : Integer; const x : Char);
  begin
  end;

begin
end.

En changeant les spécifications de la propriété incriminée en array ou en enlevant la directive 'default', vous pouvez supprimer cette erreur.