E2208 Interface '%s' bereits implementiert von '%s' (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Im Vererbungsabschnitt der Klassendefinition wurde die Schnittstelle 'name1' von der Klasse 'name2' mehrmals angegeben.


program Produce;
  type
    IBaseIntf = interface
    end;

    TBaseClass = class (TInterfacedObject, IBaseIntf, IBaseIntf)
    end;

begin
end.

In diesem Beispiel wird die Schnittstelle IBaseIntf interface im Vererbungsabschnitt der Definition von TBaseClass mehrmals angegeben. Eine Klasse darf aber dieselbe Schnittstelle nicht mehrmals implementieren. Wenn das der Fall ist, gibt der Compiler diese Fehlermeldung aus.


program Solve;

  type
    IBaseIntf = interface
    end;

    TBaseClass = class (TInterfacedObject, IBaseIntf)
    end;

begin
end.

Für diesen Fehler gibt es nur eine Lösung: Sie müssen sicherstellen, dass die Schnittstelle nur einmal im Vererbungsabschnitt der Klassendefinition angegeben ist.