我有一个动态数组。但最初我不知道阵列的长度。我可以先做,我将它的长度设置为1,然后根据需要增加长度而不丢失以前存储的数据吗? 我知道我可以使用TList做这样的任务。但我想知道我是否可以用数组做到这一点?
答案 0 :(得分:15)
动态数组可以调整为更大的尺寸,而不会丢失所包含的数据。
以下程序演示了这一点。
program Project7;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
A : Array of Integer;
I : Integer;
begin
for I := 0 to 19 do
begin
SetLength(A,I+1);
A[I] := I;
end;
for I := Low(A) to High(A) do
begin
writeln(A[I]);
end;
readln;
end.