E2208 インターフェース '%s' はすでに '%s' で実装されています (Delphi)

提供: RAD Studio
移動先: 案内検索

エラーと警告のメッセージ(Delphi) への移動

クラス name2 のクラス定義の inheritance 部で,インターフェース name1 を 2 回以上指定しています。


program Produce;
  type
    IBaseIntf = interface
    end;

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

begin
end.

{ この例では,TBaseClass の定義の継承クラスに,IBaseIntf インターフェースが複数回指定されている。クラスで同じインターフェースを複数回実装することはできないので,コンパイラはエラーメッセージを出力する }


program Solve;

  type
    IBaseIntf = interface
    end;

    TBaseClass = class (TInterfacedObject, IBaseIntf)
    end;

begin
end.

{ このエラーの唯一の解決策は,クラス定義の継承クラスに特定のインターフェースが 2 回以上指定されないようにすること }