【发布时间】:2016-08-17 17:55:11
【问题描述】:
评估typeof(Object[,][]).Name 得到Object[][,]
同样,typeof(Object[][,]).Name 给出Object[,][]
好像逗号无缘无故移动了。
什么给了?
【问题讨论】:
-
我找到了改变逗号位置的规则,但我不知道为什么会这样。逗号反射到数组的中心。例如;
[,][][][][]给你[][][][][,],[][,][][][]给你[][][][,][],[][][,][][]给你[][][,][][]结果。 -
@SonerGönül:试试
[][,][,,][,,,][,,,,]——现在清楚是怎么回事了吗? -
@EricLippert 是的,谢谢。
FullName属性也给出了相同的结果。也许这就是我们称之为反射的原因 -
@SonerGönül:搞笑!
-
我遇到了一种情况,我需要将一个锯齿状的矩形数组数组转换成一个锯齿状的锯齿状数组。
T[][][,]到T[][][][]永远不会遇到问题。所以C#设计师在这种情况下做了对程序员来说很自然的事情。当然,如果我看起来是反射型,我会彻底糊涂的。
标签: c# .net reflection multidimensional-array