Acabo de ver esto en el proyecto de CA #:
public char this[int index]
Me considero nuevo en C #; cualquiera puede ayudar a lo que significa?
Es un indexador.
Los indexadores permiten indexar las instancias de una clase o estructura como las matrices. Los indexadores se parecen a las propiedades, excepto que sus descriptores toman parámetros. Un indexador proporciona una syntax similar a una matriz. Permite acceder a un tipo de la misma manera que una matriz. Las propiedades como los indexadores suelen acceder a una tienda de respaldo. A menudo aceptamos un parámetro de tipo int y accedemos a un almacén de respaldo de tipo array.
Léelo de http://www.dotnetperls.com/indexer
string s = "hello"; Console.WriteLine (s[0]); // 'h' Console.WriteLine (s[3]); // 'l'
Implementando un indexador
Para escribir un indexador, defina una propiedad llamada this, especificando los argumentos entre corchetes. Por ejemplo:
class Sentence { string[] words = "The quick brown fox".Split(); public string this [int wordNum] // indexer { get { return words [wordNum]; } set { words [wordNum] = value; } } }
Así es como podríamos usar este indexador:
Sentence s = new Sentence(); Console.WriteLine (s[3]); // fox s[3] = "kangaroo"; Console.WriteLine (s[3]); // kangaroo
Un tipo puede declarar múltiples indexadores, cada uno con parámetros de diferentes tipos. Un indexador también puede tomar más de un parámetro:
public string this [int arg1, string arg2] { get { ... } set { ... } }
Los indexadores comstackn internamente los métodos llamados get_Item
y set_Item
, de la siguiente manera:
public string get_Item (int wordNum) {...} public void set_Item (int wordNum, string value) {...}
El comstackdor elige el nombre Item
por defecto; en realidad puede cambiar esto decorando su indexador con el siguiente atributo:
[System.Runtime.CompilerServices.IndexerName ("Blah")]
esto se llama indexer
.
Eso se llama indexador . Lea más sobre ellos en MSDN .