私はコレクションクラスを持っていMyCollection<T>
ます。
を実装T this[string name]
しましたが、正常に動作します。
私も実装しようとしましT Item(string name)
たが、もちろんエラーが発生しました:
このタイプ
MyCollection<T>
にはすでに Item の定義が含まれています
あるべきように。ただし、関数を実装して Item をオーバーロードしたいのですT Item(string, bool)
が、これも同じエラーをスローします。
T Item(string, bool)
なぜコンパイラはそれがインデクサーと衝突すると考えるのでしょうT Item(string)
か? インデクサーではなく単なる通常のメソッドである場合、これら 2 つの宣言は 2 つの完全に有効なオーバーロードになります。