On Thursday, 26 January 2017 at 03:02:32 UTC, Jonathan M Davis wrote:
On Thursday, January 26, 2017 01:47:53 Profile Anaysis via Digitalmars-d- learn wrote:
     [...]

Like in C/C++, types are mostly read outward from the variable name in D. In both C/C++ and D,

[...]

Actually, I think the notation is simply wrong.


        // Matrix order testing
        auto x = new int[][][][](1,2,3,4);
        auto y = new int[1][2][][](3,4);

        for(int i = 0; i < 1; i++)
                for(int j = 0; j < 2; j++)
                        for(int k = 0; k < 3; k++)
                                for(int l = 0; l < 4; l++)   
                                {
                                        x[i][j][k][l] = i*j*k*l;
                                        //x[l][k][j][i] = i*j*k*l;

                                        //y[i][j][k][l] = i*j*k*l;
                                        //y[l][k][j][i] = i*j*k*l;
                                        y[k][l][j][i] = i*j*k*l;
                                }


It is inconsistent with dynamic arrays and mixing them creates a mess in the order of indices.

I best someone was asleep at the wheel when programming the code for static arrays. (probably someone different than who programmed the dynamic arrays)

This is a bug IMO.(unfortunately one that can't be fixed ;/)


Reply via email to