多维数组上的SetLength

问题描述 投票:12回答:1

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

dynamic multidimensional-array pascal
1个回答
18
投票
var
  arr: array of array of real;

...

SetLength(arr, 10, 20); // creates a 10 by 20 matrix

做这件事的一种不好但等效的方法是做

SetLength(arr, 10);
for i := low(arr) to high(arr) do
  SetLength(arr[i], 20);

但是,后一种方法允许使用“非矩形”数组。

© www.soinside.com 2019 - 2024. All rights reserved.