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

C# 多维数组枚举器是否保证所有实现的顺序相同?,c#,multidimensional-array,specifications,C#,Multidimensional Array,Specifications,在所有平台上,是否总是以相同的顺序打印元素 foreach (var el in multidimArray) Console.WriteLine(el); 我正在寻找规范或任何官方的引用。是的,内置数组的枚举顺序定义良好且与平台无关 请参见(8.8.4 foreach声明)的相关部分: foreach遍历数组元素的顺序如下: 对于一维数组,元素以递增的索引顺序遍历,从索引0开始,以索引长度–1结束 对于多维数组,遍历元素时,首先增加最右边维度的索引,然后增加下一个左边维度的索引,依此类推

在所有平台上,是否总是以相同的顺序打印元素

foreach (var el in multidimArray) Console.WriteLine(el);

我正在寻找规范或任何官方的引用。

是的,内置数组的枚举顺序定义良好且与平台无关

请参见(8.8.4 foreach声明)的相关部分:

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

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

假设我编写了一个实现IEnumerable并随机返回内容的类(multidimArray)。所以答案是这取决于…@Eser您的自定义类永远不会是多维数组。这个问题不是关于专业服务器或网络相关的基础架构管理,要求提供规范报价与要求推荐或查找书籍、工具、软件库、教程或其他非现场资源不同。简而言之,除非你找到一个重复的问题,否则没有很好的理由结束这个问题。