Csharp-indexers
提供:Dev Guides
C#-インデクサー
構文
一次元のインデクサーには、次の構文があります-
インデクサーの使用
インデクサーの動作の宣言は、ある程度プロパティに似ています。 プロパティと同様に、インデクサーの定義には get および set アクセサーを使用します。 ただし、プロパティは特定のデータメンバーを返すか設定しますが、インデクサーはオブジェクトインスタンスから特定の値を返すか設定します。 つまり、インスタンスデータを小さなパーツに分割し、各パーツにインデックスを付け、各パーツを取得または設定します。
プロパティを定義するには、プロパティ名を指定する必要があります。 インデクサーは名前ではなく、オブジェクトインスタンスを参照する this キーワードで定義されます。 次の例は、概念を示しています-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
オーバーロードされたインデクサー
インデクサーは過負荷になる可能性があります。 インデクサーは複数のパラメーターで宣言することもでき、各パラメーターは異なるタイプである場合があります。 インデックスが整数である必要はありません。 C#では、文字列など、他のタイプのインデックスを使用できます。
次の例は、オーバーロードされたインデクサーを示しています-
上記のコードをコンパイルして実行すると、次の結果が生成されます-