Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)qq
published in(发表于) 2014/7/11 9:20:43
C#中索引器的概念和应用实例

C#中索引器的概念和应用实例

索引器

索引器允许类或结构的实例按照与数组相同的方式进行索引。索引器类似于属性,不同之处在于它们的访问器采用参数。它可以使得像数组那样对对象使用下标。它提供了通过索引方式方便地访问类的数据信息的方法。

声明类或结构上的索引器时,可以使用this关键字,信息:网站源代码例如:

public int this[int index] //声明索引器

{

// get and set 访问

}

索引器的修饰符有new、public、protected、internal、private、virtual、sealed、override、abstract和extern。当索引器声明包含extern修饰符时,称该索引器为外部索引器。因为外部索引器声明不提供任何实际的实现,所以它的每个访问器声明都由一个分号组成。

索引器的签名由其形参的数量和类型组成。它不包括索引器类型或形参名。如果在同一类中声明一个以上的索引器,则它们必须具有不同的签名。

索引器值不归类为变量,因此,不能将索引器值作为ref或out参数来传递。

下面用一个例子来说明如何声明和使用索引器。

在本示例中,定义了一个泛型类,并为其提供了简单的get和set访问器方法(作为分配和检索值的方法)。Program 类为存储字符串创建了此类的一个实例。代码如下:

class SampleCollection

{

private T[] arr = new T[100];

public T this[int i]

{

get

{

return arr[i];

}

set

{

arr[i] = value;

}

}

}

下面讲解如何使用上述代码实现的索引器,信息:网站源代码具体代码示例如下:

class Program

{

static void Main(string[] args)

{

SampleCollection 锁 = new SampleCollection();

s[0] = "索引器的使用";

System.Console.WriteLine(锁[0]);

}

}

C# 并不将索引类型限制为整数。例如,对索引器使用字符串可能是有用的。通过搜索集合内的字符串并返回相应的值,可以实现此类索引器的功能。由于访问器可被重载,字符串和整数版本可以共存。




If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759