C# での角括弧演算子のオーバーロード
角括弧演算子を使用すると、C# のクラスがそのメンバーへのインデックス付きアクセスを提供できるようになります。これにより、開発者は、配列のような構文を使用してアクセスできるカスタム コレクションまたはデータ構造を作成できます。
ドキュメント
角括弧演算子のオーバーロードについては、を参照してください。 「アイテム」のドキュメントへproperty.
実装
インデクサーをオーバーロードするには、次の構文でプロパティを宣言します。
public object this[parameters] { get; set; }
ここで、パラメーターは型と数値を指定します。へのアクセスに使用されるインデックスのmember.
例外処理
インデクサーは、無効なインデックスが渡されたときにオプションで例外をスローできます。無効なインデックスに対しては ArgumentOutOfRangeException をスローすることをお勧めします。
DataGridView の例
DataGridView のインデクサーは、無効な座標が指定された場合でも例外をスローしませんが、これは明示的には行われていません。ドキュメントに記載されています。
カスタム コレクション例
public class MyCollection { private List<int> _innerList = new List<int>(); public object this[int i] { get { return _innerList[i]; } set { _innerList[i] = value; } } }
これにより、次の構文を使用して MyCollection のメンバーにアクセスできるようになります:
var collection = new MyCollection(); int item = collection[0];
以上がC# で角括弧演算子をオーバーロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。