类中的奇怪属性

时间:2012-10-18 11:47:34

标签: c#

你能描述它的作用吗?我在一个项目中遇到过它,不知道它是如何工作的。

public object this[int i]
{
    get { return columnValues[i]; }
}

2 个答案:

答案 0 :(得分:4)

这称为索引器,用于索引,例如我们用它来从字符串中获取字符。您可以为此做好准备herehere

string str = "heel";

char chr = str[0];

这就是为类

制作索引器的方法
class Sentence
{
    string[] words = "The quick brown fox".Split();
    public string this [int wordNum] // indexer
    {
       get { return words [wordNum]; }
       set { words [wordNum] = value; }
    }
}

Sentence s = new Sentence();
Console.WriteLine (s[3]); // fox
s[3] = "kangaroo";
Console.WriteLine (s[3]); // kangaroo

答案 1 :(得分:3)

这称为indexer。它允许您使用自己类型的方括号。