Re: Array of pointers
Keep in mind that, unlike in c++, D classes are reference types: class Node { Node[] nodes; // This is valid } Structs are value types though, so using a struct in the above example is illegal. You mean: struct Node { Node[] nodes; } or struct Node { Node*[] nodes; } ? Works both. What's not working is this: struct Node { Node node; } I wanted to heap allocate Nodes which connect to each other via pointers. Since each Node connects to multiple others i came up with this solution. class Node { auto content; Node*[] nodes; //..constructor.. }
Re: Array of pointers
Nodes are reference types in D, so probably you don't need to use a * for Node. Alternatively use a struct handled by pointer. auto content; can't compile, you need a type, or you have to template Node on T and use it for content. Bye, bearophile Youre right, it compiles now, and the object generated is of the same size. I'm still confusing with C. I have some experience with C experience, so I still have to learn tamplates. Thaks for the help. Arjan
Array of pointers
Hi. I started my first program in D (I have a little experience in c). I wanted to create an array of pointers for creating a node with multiple connections. In C you can make one directly (node *nedePtr[]). What is the equivalent for the D's syntax?? Regards Arjan
Re: Array of pointers
On Thursday, 16 January 2014 at 09:00:18 UTC, Namespace wrote: On Thursday, 16 January 2014 at 08:55:43 UTC, Arjan Fetahu wrote: Hi. I started my first program in D (I have a little experience in c). I wanted to create an array of pointers for creating a node with multiple connections. In C you can make one directly (node *nedePtr[]). What is the equivalent for the D's syntax?? Regards Arjan node*[] nedePtr; Ok. Thank You!