Does D support dynamically allocated multi-dimensional arrays?

Seth Hoenig seth.a.hoenig at gmail.com
Sun Aug 15 19:20:12 PDT 2010


What I really want is something like this:

auto s = args[1];
auto t = args[2];
auto d = new int[s.length][t.length];

but the compiler complains with the error: Error: Integer constant
expression expected instead of s.length

So then I try to fudge it with something like:

auto d = new int[][t.length];
d.length = s.length;

But then accessing elements of d throws an exception:
core.exception.RangeError at Lev(7): Range violation

Soo.. how am I supposed to make a matrix when I don't know the dimensions at
compile time?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20100815/a836891b/attachment.html>


More information about the Digitalmars-d mailing list