Mapping with partial
anonymous via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Mar 30 12:08:23 PDT 2015
On Monday, 30 March 2015 at 18:37:53 UTC, matovitch wrote:
> On Monday, 30 March 2015 at 18:34:19 UTC, Adam D. Ruppe wrote:
[...]
>> Aye, that would work too, but the slice I think is more
>> efficient as I'm pretty sure... not completely sure, but I
>> think .array makes a copy of static arrays, whereas the slice
>> doesn't.
>
> I was going to ask you the question does it just add the range
> shell or does it make a copy ? :/ Maybe someone else know.
Let's check the documentation.
http://dlang.org/phobos/std_array.html#array says: "Allocates an
array and initializes it with copies of the elements of range r."
Documentation says copy.
Let's check the actual behaviour.
----
void main()
{
int[1] a = [1];
import std.array: array;
a.array[0] = 2;
import std.stdio: writeln;
writeln(a[0]);
}
----
(also at <http://dpaste.dzfl.pl/1191144a9acf>)
This program prints "1". That's the output we'd expect when
`array` makes a copy. Actual behaviour says copy.
So, copy.
More information about the Digitalmars-d-learn
mailing list