typo mapNode[6]* exits; instead of mapNode*[6] exits; but whats it mean ?
Simen Kjærås
simen.kjaras at gmail.com
Wed Oct 10 13:36:20 UTC 2018
On Wednesday, 10 October 2018 at 13:24:42 UTC, Codifies wrote:
> I'm not sure I understand what mapNode[6]* means! (the second
> version is what I wanted an array of 6 pointers)
>
> oddly when assigning a null to one element of the array it
> cause an error as it was trying to do an array copy... so
> what's going on and what does that definition actually mean ?
mapNode[6]* can be read right-to-left as 'a pointer to an array
of 6 mapNodes'.
For simplicity, let's use int instead of mapNode:
unittest {
int[6]* p;
int[6] arr;
p = &arr;
(*p)[0] = 1;
(*p)[1] = 2;
(*p)[2] = 3;
(*p)[3] = 4;
(*p)[4] = 5;
(*p)[5] = 6;
assert(arr == [1,2,3,4,5,6]);
}
--
Simen
More information about the Digitalmars-d-learn
mailing list