我经常在维护代码中看到这个表达式
Global["Name"]
这代表什么?我使用了Global.Name
但从未使用Global["Name"]
?
是否存在使用此类表达式的位置?
答案 0 :(得分:8)
这称为indexer。在这种情况下,Global
可能是某种字典或哈希表。 "Name"
是访问该词典中特定项目的关键
答案 1 :(得分:3)
在查找包含键/值对的词典和集合时使用它,例如
var peopleAges = new System.Collections.Generic.Dictionary<string, int>();
peopleAges["fred"] = 21;
peopleAges["emma"] = 18;
var fredAge = peopleAges["fred"]; // returns 21
答案 2 :(得分:0)
这是C#允许的一种称为默认属性的简写形式。当一个类具有DefaultMemberAttribute时,C#允许以这种方式省略该属性中命名的属性的名称。