当我们在返回类型之后提到它时,“this”意味着什么

时间:2014-02-14 12:35:11

标签: c#

我遇到了以下代码, 我无法理解以下代码中“this”的含义。

public Return-Type this[string param1, int param2]
{

}

1 个答案:

答案 0 :(得分:4)

它被称为indexer。您可以阅读documentation

  

索引器允许对类或结构的实例进行索引,就像数组一样。索引器类似于属性,除了它们的访问器接受参数。

通常所有数组和集合都至少有一个indexer。例如,这里是List<T>索引器的实现:

public T this[int index] {
   get {
            if ((uint) index >= (uint)_size) {
                ThrowHelper.ThrowArgumentOutOfRangeException();
            }

            Contract.EndContractBlock();
            return _items[index]; 
        }

List<T>的内部Array类型为T,它的索引器会在特定索引处返回该数组的项目。