c#语法-带索引器的类名

本文关键字:索引 语法 | 更新日期: 2023-09-27 17:52:34

这可能是一个愚蠢的问题,但这里有。在我的程序中有这样一条语句:

 // No node should be shown as selected
 mdxTreeList.Selection.Set(new TreeListNode[0]);

变量mdxTreeList是DevExpress XtraTreeList的一个实例。TreeList控件,TreeListNode是另一个DevExpress类的名称。但是语法"new TreeListNode[0]"究竟是什么意思呢?我本以为这是一个语法错误,但它工作得很好。(如果我没记错的话,这条语句最初来自DevExpress示例程序。)

c#语法-带索引器的类名

这是一个零长度的一维数组(即零成员)。类型为TreeListNode[]

有些人喜欢写和new TreeListNode[] { }一样的东西,但这只是一个品味问题。

顺便说一下,由于static索引器在c#中是不允许的,所以不可能这是一个索引器访问。(当然索引器意味着"看起来像"数组,所以两者都使用方括号[]语法并不是偶然的。)

这只是一个没有元素的TreeListNode[]类型的数组。