这个表达式[b]在C#中代表什么?

时间:2010-08-24 07:38:01

标签: c#

我经常在维护代码中看到这个表达式

Global["Name"]

这代表什么?我使用了Global.Name但从未使用Global["Name"]

是否存在使用此类表达式的位置?

3 个答案:

答案 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#允许以这种方式省略该属性中命名的属性的名称。