public interface IMyInterface : ICloneable
{
IMyInterface Clone();
}
「TestApp.IMyInterface.Clone()」は、継承されたメンバー「System.ICloneable.Clone()」を非表示にします。非表示が意図されている場合は、new キーワードを使用します。
と互換性のあるインターフェイスが必要ICloneable
です。このあいまいさを解決するにはどうすればよいですか?
アップデート
を実装するこの具象クラスを考えてみましょうIMyInterface
。アイデアは、 を受け入れるメソッドが引き続き機能するように、機能Clone
するメソッドと実装を持たなければならないということです!ICloneable
ICloneable
public class MyClass : IMyInterface
{
#region ICloneable interface
object ICloneable.Clone()
{
return this.Clone();
}
#endregion
public IMyInterface Clone()
{
return new MyClass();
}
}
さて、これはコンパイルされますが、この警告があります。警告を取り除き、ICloneable
インターフェイスとの互換性を維持するにはどうすればよいですか?