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)

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.