Zuhause Entwicklung Was ist ein Indexer in c? - Definition aus techopedia

Was ist ein Indexer in c? - Definition aus techopedia

Inhaltsverzeichnis:

Anonim

Definition - Was bedeutet Indexer?

Ein Indexer im Kontext von C # ist ein Klassenmitglied, das Array-ähnliche Indizierungsfunktionen für den einfachen Zugriff auf Objekteigenschaften bereitstellt. Ein Indexer wird meistens verwendet, wenn ein Array in einen Typ eingeschlossen ist.


Die einfache Syntax eines Indexers hilft Clientanwendungen beim Zugriff auf Elementgruppen als Array-Objektelement (Typ, Klasse oder Struktur). Ein Indexer bietet eine indirekte Methode zum Einfügen von Grenzüberprüfungslogik. Aufgrund seiner intuitiven Art verbessert ein Indexer die Lesbarkeit des Codes.


Ein Indexer wird häufig zum Implementieren eines Stapels verwendet, damit auf dessen Inhalt zugegriffen werden kann, ohne dass Elemente entfernt werden müssen. Die Implementierung des Java-Indexers ähnelt C #. Im Allgemeinen können Indexer aufgrund ihrer Benutzerfreundlichkeit und Flexibilität im Bibliothekscode verwendet werden.

Techopedia erklärt Indexer

Indexer ähneln zwar Eigenschaften, verwenden jedoch andere Parameter. Eigenschaften werden durch den Namen identifiziert, während Indexer durch die Signatur und die Verwendung des Schlüsselworts "this" gekennzeichnet sind. Auf Eigenschaften kann über Member zugegriffen werden, auf Indexer wird jedoch über Elemente zugegriffen. Im Gegensatz zu Eigenschaften lässt ein C # -Compiler keine Verwendung des statischen Indexers zu.


Ein Indexer ist praktisch, da seine Klassen- und Strukturinstanzen wie Arrays indiziert sind und die Klammernotation verwenden, um auf ein Element zuzugreifen. Indexer werden als Smart Arrays bezeichnet. Accessoren sind die Indexkomponenten get und set, die das Abrufen und Setzen von Werten ermöglichen. Basierend auf dem für die Suche erforderlichen Elementtyp wird ein Indexer mit der entsprechenden Signatur deklariert. Das Schlüsselwort "this" wird verwendet, um Indexer zu definieren, und "Value" wird verwendet, um den festgelegten Accessor zuzuweisen.


Der Typ und die Parameter eines Indexers sollten so zugänglich sein wie der Indexer selbst. Die Anzahl und Art der formalen Argumente ist der Signatur eines Indexers bekannt, nicht jedoch die Art oder die Argumentnamen. Der Rückgabetyp sollte ein gültiger C # -Typ sein. Ein Indexer muss mindestens einen Parameter haben.


Klassenindexer sind möglicherweise überladen und weisen unterschiedliche Signaturen auf. Da Indexer keine Variablen sind, können sie nicht als "ref" - oder "out" -Parameter verwendet werden. Die Cross Language verwendet den Standardnamen Item, sofern in der Deklaration nicht anders angegeben. Mit Indexern implementierte Accessoren können mit mehreren Typen überlastet werden. Indexer ermöglichen die Übergabe von mehr als einem formalen Parameter, z. B. beim Zugriff auf ein zweidimensionales Array. Abstrakte Indexer werden implementiert, indem einfach die get / set-Accessoren in der Basisklasse deklariert und der abgeleitete Klassencode hinzugefügt wird.


Obwohl Indexer auch in Schnittstellen verwendet werden, unterscheiden sich die Klassendeklarationen. Interface-Indexer-Accessoren verwenden keine Modifikatoren und haben keinen Body. Indexer werden auch in Schnittstellen verwendet, um anzuzeigen, ob sie schreibgeschützt, schreibgeschützt oder schreibgeschützt sind. Gemäß den Entwurfsrichtlinien ist die Implementierung der richtigen Fehlerbehandlungsstrategie wichtig, wenn Sie die get- und set-Accessoren verwenden. Außerdem müssen Sie die erforderlichen Fehlerausnahmedokumentationen für die Indexer bereitstellen. Es wird empfohlen, den Zugriff auf die erforderliche Ebene zu beschränken, um schädliche Einstellungswerte zu vermeiden. Diese Definition wurde im Kontext von C # geschrieben.

Was ist ein Indexer in c? - Definition aus techopedia