ingemar wrote on Mon, 04 Jun 2012:
There is just one thing that I can't do: I can't initialize a matrix in any elegant way! I would like to do like this: m1: Matrix = ((1, 2, 3), (2, 3, 4)); and get a properly sized dynamic array matching the matrix given. This is obviously not supported, but what can I do? I can build an infinite number of functions, taking fixed-sized arrays as input and returning a dynamic array, but then I need one function for each combination of height and width! That is OK for sizes up to 3 or 4 but then it becomes ridiculous. Is there a better way to solve this problem?
I think this is a case where a pointer combined with a width and height parameter is probably the best solution. The more Pascal-like and cleaner approach using open array parameters is only generic if you limit yourself to 1-dimensional arrays.
Jonas _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal