我可以调整 Delphi 数组的大小而不丢失其以前的内容吗?

发布于 2024-09-07 23:56:00 字数 114 浏览 2 评论 0原文

我有一个动态数组。但最初我不知道数组的长度。我可以先将其长度设置为 1,然后根据需要增加长度而不丢失以前存储的数据吗?
我知道我可以使用 TList 完成这样的任务。但我想知道我是否可以用数组来做到这一点?

I have a dynamic array. But initially I am not knowing the length of the array. Can I do like first I set the length of it as 1 and then increase length as I needed without lost of previously stored data?
I know I can do such task using TList. But I want to know whether I can do it with array or not?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你曾走过我的故事 2024-09-14 23:56:01

动态数组可以调整为更大的大小,而不会丢失所包含的数据。

以下程序实际演示了这一点。

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.

Dynamic Arrays can be resized to a larger size without losing the contained data.

The following program demonstrates this in action.

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.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文