索引函数
C# 提供了索引函数机制来提供快速、可读性强的读写方式。索引函数的语法是:
public <type> this[<index type> <paramter name>]
{
// get 和 set 至少有一个
get {
// get 访问函数的定义
}
set {
// set 访问函数的定义
}
}
例子,如果有一个类型是 Person , 而 Person 的字段有姓名,年龄,联系方式,而且它们都是以 string 类型来存储的。则可以把这些条目名作为索引:
public class Person { private string name; private string phone; private string age; public string this[string index] { get { switch(index) { case "姓名": return name; case "年龄": return age; case "联系方式": return phone; default: return ""; } } set { switch (index) { case "姓名": name = value;break; case "年龄": age = value; break; case "联系方式": phone = value; break; } } } } public static void Main(string[] args) { Person p = new Person(); p["姓名"] = "Person P"; Console.Write(p["姓名"]); }