開発 Cのインデクサーとは何ですか? -techopediaからの定義

Cのインデクサーとは何ですか? -techopediaからの定義

目次:

Anonim

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

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


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


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

TechopediaはIndexerを説明します

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


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


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


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


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

Cのインデクサーとは何ですか? -techopediaからの定義