E2271 Les getters et setters de propriétés ne peuvent être surchargés (Object Pascal)

De Appmethod Topics
Aller à : navigation, rechercher

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

Une propriété a désigné une procédure surchargée comme son getter ou setter.


unit Produce;
interface
  type
    Base = class
    public
      function getter : Integer; overload;
      function getter(a : char) : Integer; overload;
      property Value : Integer read getter;
    end;

implementation
function Base.getter : Integer;
begin getter := 0;
end;

function Base.getter(a : char) : Integer;
begin
end;

end.


La fonction surchargée getter de l'exemple ci-dessus provoque l'erreur.


unit Solve;
interface
  type
    Base = class
    public
      function getter : Integer;
      property Value : Integer read getter;
    end;

implementation
function Base.getter : Integer;
begin getter := 0;
end;

end.



Lorsque ce problème surgit, la seule solution consiste à supprimer les spécifications overload, comme le montre l'exemple ci-dessus.