Dot-Net
按記憶體順序物理排列的矩形陣列
在 C 中,在數組中說
A[2][3]最右邊的索引更改導致最小的記憶體地址偏移,即元素位於記憶體中A[0][0], A[0][1]....NET 中的矩形數組也是如此嗎?如果我們有,說數組
a[2, 3]是位於記憶體中的元素a[0, 0], a[0, 1]...嗎?
CLI 規範第8.9.1 節規定:
數組元素應在數組對像中以行優先順序排列(即,與最右邊數組維度相關的元素應從最低索引到最高索引連續排列)。為每個數組元素分配的實際儲存空間可以包括特定於平台的填充。
所以答案是肯定的——你會首先遇到第一行的所有元素,然後是第二行的所有元素,等等(正如規範所說,這稱為row-major order)。