On Wednesday, 13 March 2013 at 21:08:30 UTC, Timon Gehr wrote:
On 03/13/2013 09:59 PM, John Colvin wrote:
On Wednesday, 13 March 2013 at 20:46:35 UTC, Timon Gehr wrote:
On 03/13/2013 09:23 PM, John Colvin wrote:
On Wednesday, 13 March 2013 at 20:10:14 UTC, bearophile
wrote:
int[10][3] = [1, 2, 3];
Currently that second line of code doesn't work.
Bye,
bearophile
It would be really nice if it did.
Then what's the meaning of
int[3][3] x = [1,2,3];
Is it
int[3][3] x = [[1,2,3],[1,2,3],[1,2,3]];
or
int[3][3] x = [[1,1,1],[2,2,2],[3,3,3]];
the former, clearly. It directly follows from
int[3] a = 1;
Every element of the array is initialised to the value given.
x is an
array of arrays and hence each "element-array" is initialised
to the
array on the right hand side.
That's clearly a valid way of reasoning, however, it is not the
only one.
int[3] a = 1;
int[3] b = 2;
int[3] c = 3;
int[3][3] x = [a,b,c];
this would also be valid, as you have fully specified the
elements of the array. I don't see the conflict?