型のインスタンスにインデックスを付けられるようにしたいだけの場合は、どの C# インターフェイスを使用すればよいですか? 要素を追加/削除/編集する機能は必要ありません (または、必要ありません)。列挙型は問題ありません。これにはカスタム型が必要ですかIIndexable
?
この場合は、IList
不要なメンバーの実装を強制するため、やりすぎです。
ベストアンサー1
.Net 4.5では、(おそらく)正しい方法は、IReadOnlyList<T>
、これはIReadOnlyCollection<T>
、これはIEnumerable<T>
IReadOnlyList<T>
インデクサーを提供しますIReadOnlyCollection<T>
コレクションの Count プロパティを取得します。IEnumerable<T>
コレクション Enumerator を提供します。
できる限り軽くします。
直接実装するコアクラスIReadOnlyList
: