Array expression for multi dimensional arrays
spir
denis.spir at gmail.com
Wed Mar 23 04:41:01 PDT 2011
On 03/23/2011 12:01 PM, Madhav wrote:
> Hi,
>
> I tried to do the following:
> auto arr = new int[2][2];
> arr[] = 1; // using array expressions
> // The above gives - Error: cannot implicitly convert expression (1) of type
> int to const(int[2u][])
>
> This was the first step to try out if array arithmetic that worked with single
> dimensional arrays worked with multi-dimensional. I guess it does not.
>
> The immediate utility of this would be to cleanly do matrix algebra. Any ideas
> why powerful array expressions were not extended to multi dimensional arrays
> as well?
>
> Regards,
> Madhav
IIUC, you can do it level by level only:
unittest {
int[3] a3;
int[3][2] a32;
a3[] = 1;
a32[] = a3;
assert(a32 == [[1,1,1], [1,1,1]]);
}
Note: in those assignments, [] is optional, but I consider this as a bug. Even
more since
int[3] a3 = 1; // works
int[3][2] a32 = a3 // works not
denis
--
_________________
vita es estrany
spir.wikidot.com
More information about the Digitalmars-d
mailing list