Copying and array into another

Paul Backus snarwin at gmail.com
Tue Aug 9 18:41:52 UTC 2022


On Tuesday, 9 August 2022 at 18:33:04 UTC, pascal111 wrote:
> I tried to copy an array into another without affecting in the 
> original array when I try to change the value of any element of 
> the new array, but I failed except with this way in the next 
> code:
>
> '''D
> int[] x=[1,2,3];
>     int[] y=x.filter!("a==a").array;
>
>     y[1]=800;
>
>     x.writeln;
>     y.writeln;
> '''

A simpler way to do this is to use the array's built-in .dup 
method [1]:

     int[] x = [1, 2, 3];
     int[] y = x.dup;
     y[1] = 800;

     writeln(x); // [1, 2, 3]
     writeln(y); // [1, 800, 3]

[1] https://dlang.org/spec/arrays.html#array-properties


More information about the Digitalmars-d-learn mailing list