在Delphi中,通过引用传递数组可以通过使用指针和动态数组实现。以下是一个简单的示例,演示如何在Delphi中通过引用传递数组:
program PassArrayByReference;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
TIntArray = array of Integer;
procedure ModifyArray(var A: TIntArray);
var
I: Integer;
begin
for I := 0 to Length(A) - 1 do
A[I] := A[I] * 2;
end;
var
MyArray: TIntArray;
I: Integer;
begin
SetLength(MyArray, 5);
for I := 0 to Length(MyArray) - 1 do
MyArray[I] := I + 1;
WriteLn('Before modification:');
for I := 0 to Length(MyArray) - 1 do
WriteLn(MyArray[I]);
ModifyArray(MyArray);
WriteLn('After modification:');
for I := 0 to Length(MyArray) - 1 do
WriteLn(MyArray[I]);
ReadLn;
end.
在这个示例中,我们定义了一个名为TIntArray
的动态数组类型,并创建了一个名为ModifyArray
的过程,该过程接受一个var
参数,用于通过引用传递数组。在ModifyArray
过程中,我们将数组中的每个元素乘以2。在主程序中,我们创建了一个MyArray
数组,并在调用ModifyArray
过程之前和之后输出数组的内容。
这个示例演示了如何在Delphi中通过引用传递数组,以便在过程中修改原始数组。
领取专属 10元无门槛券
手把手带您无忧上云