快速重置固定宽度的2d锯齿数组

本文关键字:2d 数组 固定宽度 | 更新日期: 2023-09-27 18:09:48

我想创建一个2D锯齿数组(如前所述,所以答案声称在dot net上比多维数组更快)。

我想做一些像

Int [][] myarr = new int [2][3]; 

但是C#似乎不支持这一点,所以我确实使用了一个for循环的第二次元实例化。然而,如果我想快速重置,我不能使用memset等效,因为循环中的每个new都可能在不同的位置启动数组,而不是连续的位置。

是否有更快的方法来初始化和重置固定宽度锯齿数组?

快速重置固定宽度的2d锯齿数组

你可以使用LINQ和Enumerable.Range方法,但内部仍然有一个循环执行:

int[][] myarr = Enumerable.Range(0, 2).Select(x => new int[3]).ToArray();