Initialising multidimensional dynamic arrays
    ketmar via Digitalmars-d-learn 
    digitalmars-d-learn at puremagic.com
       
    Wed Oct  1 01:07:54 PDT 2014
    
    
  
On Wed, 01 Oct 2014 07:45:48 +0000
Mike James via Digitalmars-d-learn <digitalmars-d-learn at puremagic.com>
wrote:
> so in the constructor...
> 
> this(size_t x, size_t y) {
>    mda = new MyDataArray[](x);
>          foreach(n, _; mda) mda[n].data.length = y;
> }
> 
> Is there a simpler way?
sorry, but no. btw, if MyDataArray is struct, you should do this:
  foreach (ref m; mda) m.data.length = y;
or even this:
  foreach (ref m; mda = new MyDataArray[](x)) m.data.length = x;
the thing is that without 'ref' you operates on the local copy, not on
the real array element.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.puremagic.com/pipermail/digitalmars-d-learn/attachments/20141001/dcab074a/attachment.sig>
    
    
More information about the Digitalmars-d-learn
mailing list