E2206 Redéfinition de propriété non autorisée dans le type interface (Delphi)

De RAD Studio
Aller à : navigation, rechercher

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

Une propriété déclarée dans une interface de base a été redéfinie dans une extension d'interface.


program Produce;
  type
    Base = interface
      function Reader : Integer;
      function Writer(a : Integer);
      property Value : Integer read Reader write Writer;
    end;

    Extension = interface (Base)
      function Reader2 : Integer;
      property Value Integer read Reader2;
    end;

begin
end.

L'erreur de cet exemple est que Extension essaie de redéfinir la propriété Value.


program Solve;
  type
    Base = interface
      function Reader : Integer;
      function Writer(a : Integer);
      property Value : Integer read Reader write Writer;
    end;

    Extension = interface (Base)
      function Reader2 : Integer;
      property Value2 Integer read Reader2;
    end;

begin
end.

Une solution à cette erreur consiste à renommer la propriété mise en cause. Une autre approche consiste à déterminer l'intention originelle et restructurer la conception du système pour résoudre le problème.