如何在“D”中操作数组?
Lance Roberts
问问题
314 次
3 回答
4
在这里您可以找到 D 中数组操作的完整参考。
于 2008-10-13T04:54:31.117 回答
3
要对数组进行切片,只需使用
int[7] a;
int[] b;
b = a[5..7];
它将 b[0] 设置为 a[5] 并将 b[1] 设置为 a[6]。但请记住,这是对 a 中元素的引用,而不是它们的另一个副本。如果您更改 b[0],这也会影响 a[5]。
如果你想复制,你必须这样做:
int[7] a;
int[2] b;
b[0..1] = a[5..7];
这是因为 b 是一个静态数组;在第一个代码块中,它是动态的(实际上是指向另一个数组中某处的指针)。
于 2008-10-13T05:45:48.597 回答
3
供参考。您还可以使用以下方式复制:
int[7] a;
int[] b;
b = a[5..7].dup;
于 2008-11-06T15:40:23.333 回答