多维数组上的SetLength

Jon*_*han 12 pascal dynamic multidimensional-array

我想知道如何设置多维数组的长度/在Pascal中创建动态多维数组.就像SetLength(arr,len)一维数组一样.我找不到答案.

And*_*and 17

var
  arr: array of array of real;

...

SetLength(arr, 10, 20); // creates a 10 by 20 matrix
Run Code Online (Sandbox Code Playgroud)

这样做的一个糟糕但相当的方法就是这样做

SetLength(arr, 10);
for i := low(arr) to high(arr) do
  SetLength(arr[i], 20);
Run Code Online (Sandbox Code Playgroud)

然而,后一种方法允许"非矩形"阵列.