E2252 Es gibt bereits eine Methode '%s' mit identischen Parametern (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Im betreffenden Datentyp gibt es bereits eine Methode mit der gleichen Signatur.


program Produce;

  type
    t0 = class
      procedure f0(a : integer); overload;
      procedure f0(a : integer); overload;
    end;

procedure T0.f0(a : integer);
begin
end;

begin
end.


Hier entsteht der Fehler, weil es zwei überladene Deklarationen für dieselbe Prozedur gibt.


program Solve;

  type
    t0 = class
      procedure f0(a : integer); overload;
      procedure f0(a : char); overload;
    end;

procedure T0.f0(a : integer);
begin
end;

procedure T0.f0(a : char);
begin
end;

begin
end.


Zur Behebung dieses Fehlers gibt es mehrere Möglichkeiten: Einerseits können Sie die redundante Deklaration aus der Prozedur entfernen. Ein anderer Ansatz, auf den hier zurückgegriffen wird, besteht darin, den Parametertyp der mehrfach vorhandenen Deklarationen so zu ändern, dass eine eindeutige Version der überladenen Prozedur erzeugt wird.