E2264 インターフェース '%s' にはメソッド解決は使用できません (Delphi)
エラーと警告のメッセージ(Delphi) への移動
implements 節に指定されたインターフェースに対してメソッド解決節を使用しようとしました。
program Produce; type I0 = interface procedure i0p0(a : char); end; T0 = class(TInterfacedObject, I0) procedure I0.i0p0 = proc0; function getter : I0; procedure proc0(a : char); property p0 : I0 read getter implements I0; end; procedure T0.proc0(a : char); begin end; function T0.getter : I0; begin end; end.
{ この例ではメソッド proc0 がインターフェース手続き i0p0 にマップされているが,このインターフェースは implements 節にあるため,名前の変更は許されない }
program Solve; type I0 = interface procedure i0p0(a : char); end; T0 = class(TInterfacedObject, I0) function getter : I0; procedure i0p0(a : char); property p0 : I0 read getter implements I0; end; procedure T0.i0p0(a : char); begin end; function T0.getter : I0; begin end; end.
{ このエラーの解決策は不正な「名前解決節」を削除すること。これを行うには,インターフェースメソッドと同じ名前のクラスにある手続きを指定する方法が簡単である }