D - 在变量中存储对子数组的引用
D - store reference to subarray in variable
我有这样的代码:
int[][] array = [[1, 2], [3, 4]];
auto line = array[0];
line ~= 5;
我假设 line
包含子数组的副本并且 array
在 line
被修改时未被修改。是否可以存储子数组作为参考?
您可以使用指向 array
的第一个元素的指针:
int[][] array = [[1, 2], [3, 4]];
auto line = &array[0];
*line ~= 5;
我想你想要的可以用切片来处理 - https://dlang.org/d-array-article.html。如果你想要一个副本,你可以使用 .dup
(可变的),或者 .idup
(不可变的)。
我有这样的代码:
int[][] array = [[1, 2], [3, 4]];
auto line = array[0];
line ~= 5;
我假设 line
包含子数组的副本并且 array
在 line
被修改时未被修改。是否可以存储子数组作为参考?
您可以使用指向 array
的第一个元素的指针:
int[][] array = [[1, 2], [3, 4]];
auto line = &array[0];
*line ~= 5;
我想你想要的可以用切片来处理 - https://dlang.org/d-array-article.html。如果你想要一个副本,你可以使用 .dup
(可变的),或者 .idup
(不可变的)。