我有一个多维数组。
我想要将内容复制到一个三维数组中。
用这种方式
byte[,] matrix;
我想要将内容复制到一个三维数组中。
byte[,,] 3dplan;
用这种方式
3dplan[,,0]=matrix
在C#中,完成这个任务的最快方法是什么?
byte[,] matrix;
byte[,,] 3dplan;
3dplan[,,0]=matrix
在C#中,完成这个任务的最快方法是什么?
byte[,][]
或 byte[][][]
),你可以将较小的数组整体插入到较大的数组槽中(尽管它们都将引用同一数组实例并会捕捉到变化)。你可以使用Buffer.BlockCopy将2D数组复制到3D数组中:
var _3dplan = new int[2, 2, 2];
var _2dplan = new int[2, 2] { { 1, 1 }, { 1, 1 } };
var index = 0;
var size = _2dplan.Length * sizeof(int);
Buffer.BlockCopy(_2dplan, 0, _3dplan, index * size, size);
C
的语言还没有赶上数组操作符和切片索引的简单性。你总是不得不手动计算每个组件。哦,我多么渴望一个具有智能感知的数组感知.NET语言。 - John Alexiou