インデクサー

著者: Randy Alexander
作成日: 1 4月 2021
更新日: 26 六月 2024
Anonim
パート65-C#チュートリアル-C#のインデクサー
ビデオ: パート65-C#チュートリアル-C#のインデクサー

コンテンツ

定義-インデクサーとはどういう意味ですか?

C#の短所であるインデクサーは、オブジェクトプロパティに簡単にアクセスできるように、配列のようなインデックス機能を提供するために使用されるクラスメンバーです。インデクサーは、配列が型内にカプセル化されるときに主に使用されます。

インデクサーの単純な構文は、クライアントアプリケーションが要素グループに配列オブジェクトメンバー(タイプ、クラス、または構造体)としてアクセスするのに役立ちます。インデクサーは、境界チェックロジックを挿入する間接的な方法を提供します。直感的な性質により、インデクサーはコードの可読性を向上させます。

インデクサーは、多くの場合、アイテムを削除せずにそのコンテンツにアクセスできるようにスタックを実装するために使用されます。 Javaインデクサーの実装はC#に似ています。一般に、インデクサーは使いやすさと柔軟性のため、ライブラリコードで使用できます。

Microsoft AzureとMicrosoft Cloudの紹介|このガイドを通して、クラウドコンピューティングとは何か、Microsoft Azureを使用してクラウドからビジネスを移行および実行する方法を学習します。

TechopediaはIndexerを説明します

インデクサーはプロパティに似ていますが、異なるパラメーターを使用します。プロパティは名前で識別されますが、インデクサーは署名とキーワード「this」の使用によって示されます。プロパティはメンバーを介してアクセスできますが、インデクサーは要素を介してアクセスされます。プロパティとは異なり、C#コンパイラは静的インデクサーの使用を許可しません。

インデクサーは、そのクラスおよび構造体インスタンスが配列のようにインデックス付けされ、ブラケット表記を使用して要素にアクセスするため、便利です。インデクサーはスマートアレイと呼ばれます。アクセサは、値の取得と設定をそれぞれ可能にするgetおよびsetインデクサーコンポーネントです。ルックアップに必要なメンバータイプに基づいて、インデクサーは適切な署名で宣言されます。キーワード「this」はインデクサーの定義に使用され、「Value」はセットアクセサーの割り当てに使用されます。

インデクサーのタイプとパラメーターは、インデクサー自体と同じようにアクセス可能でなければなりません。仮引数の数と型は、インデクサーの署名によって認識されますが、型または引数の名前は認識されません。戻り値の型は有効なC#型でなければなりません。インデクサーには少なくとも1つのパラメーターが必要です。

クラスインデクサーはオーバーロードされ、異なるシグネチャを持つ場合があります。インデクサーは変数と見なされないため、「ref」または「out」パラメーターとして使用できません。クロスランゲージは、宣言で指定されていない場合、デフォルト名のアイテムを使用します。インデクサーで実装されたアクセサーは、複数のタイプでオーバーロードされる可能性があります。インデクサーを使用すると、2次元配列にアクセスする場合など、複数の仮パラメーターを渡すことができます。抽象インデクサーは、基本クラスでget / setアクセサーを宣言し、派生クラスコードを追加するだけで実装されます。

インデクサーはインターフェイスでも使用されますが、クラス宣言は異なります。インターフェイスインデクサーアクセサーは修飾子を使用せず、本文もありません。また、インデクサーはインターフェイスで使用され、読み取り専用、書き込み専用、読み取り/書き込みのいずれであるかを示します。設計ガイドラインに従って、インデクサーに必要なエラー例外ドキュメントを提供することに加えて、getおよびsetアクセサーを使用する場合、正しいエラー処理戦略を実装することが重要です。悪意のある設定値を避けるために、アクセサーを必要なレベルに制限することをお勧めします。 この定義はC#のconで書かれています