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