E2257 Doppelte implements-Klausel für Interface '%s' (Delphi)
Nach oben zu Fehler- und Warnungsmeldungen (Delphi)
Der Compiler hat zwei unterschiedliche Eigenschaftendeklarationen gefunden, die beide angeben, dieselbe Schnittstelle zu implementieren. Eine Schnittstelle kann jedoch nur durch eine Eigenschaft implementiert werden.
program Produce; type IMyInterface = interface end; TMyClass = class(TInterfacedObject, IMyInterface) FMyInterface: IMyInterface; property MyInterface: IMyInterface read FMyInterface implements IMyInterface; property OtherInterface: IMyInterface read FMyInterface implements IMyInterface; end; end.
In diesem Beispiel versucht jede der beiden Deklarationen MyInterface und OtherInterface die Schnittstelle ImyInterface zu implementieren. Die betreffende Schnittstelle kann jedoch nur von einer Eigenschaft implementiert werden.
Die einzige Lösung besteht darin, eine der beiden implements-Klauseln zu entfernen.