Forgot to include the mailinglist -------- Weitergeleitete Nachricht -------- > Von: JM <[email protected]> > An: michele cremasco <[email protected]> > Betreff: Re: [Vala] 2D Static Array > Datum: Tue, 20 Apr 2010 14:02:30 +0200 > > Hello > Try it this way. In vala array is part of the type > > public class Matrix > { > public Matrix(double[,] x){ > mat = x; > } > public double[,] mat; > } > > public static int main() { > var y = new Matrix({{ 2.0, 3.0, 4.0, 5.0}, > { 2.0, 3.0, 4.0, 6.0}, > { 2.0, 3.0, 4.0, 7.0}, > { 2.0, 3.0, 4.0, 8.0}}); > print("get element: %lf\n", y.mat[2,3]); > return 0; > } > > > Regards > Jörn > > > > Am Dienstag, den 20.04.2010, 12:03 +0200 schrieb michele cremasco: > > typedef struct _Matrix Matrix; > > struct _Matrix > > { > > float mat[4][4]; > > } > > > > Converting in vala, it becomes: > > > > [Compact] > > public class Matrix > > { > > public float mat[4,4]; > > } > > > > But compiler doesn't support multi dimensional embedded array!! > > > > If I write in the following way it embeds correctly the mono > > dimensional > > array: > > > > Compact] > > public class Matrix > > { > > public float mat[16]; > > } > > > > But it is not what I whant. > > > > Eventually I can add inline getteres and setters: > > > > [Compact] > > public class Matrix > > { > > public float mat[16]; > > > > public inline float get(int row, int col) > > { > > return mat[row*4 + col]; > > } > > > > public inline void set(int row, int col, float val) > > { > > mat[row*4 + col] = val; > > } > > }
_______________________________________________ vala-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/vala-list
