多维数组枚举器是否保证所有实现的顺序相同?

Vla*_*lad 3 c# specifications multidimensional-array

这总是会在所有平台上以相同的顺序打印元素吗?

foreach (var el in multidimArray) Console.WriteLine(el);
Run Code Online (Sandbox Code Playgroud)

我正在寻找规格或任何官方报价.

The*_*kis 7

是的,内置数组的枚举顺序是明确定义的,与平台无关.

请参阅C#规范的相关部分(8.8.4 foreach声明):

foreach遍历数组元素的顺序如下:

  • 对于单维数组,元素以递增的索引顺序遍历,从索引0开始,以索引Length - 1结束.
  • 对于多维数组,遍历元素使得最右边的维度的索引首先增加,然后是下一个左维度,依此类推到左边.