gpt4 book ai didi

delphi - 对通过引用传递到过程的数组执行 SetLength

转载 作者:行者123 更新时间:2023-12-03 14:36:00 27 4
gpt4 key购买 nike

当然,即使我也能做到......

var
testarray : array of string;

setlength(testarray, 5);

但是如果我想变得聪明并有一个过程来通过引用传递数组,就像这样我就做不到!

procedure DoStuffWithArray(var passedarray : array of string);
begin
setlength(passedarray, 5);
end;

编译器在我的过程中的单行代码上显示“不兼容的类型”。

如果我在调用过程之前执行 setlength,我可以在数组上执行其他操作,例如设置设置元素值,但我无法在我的过程中执行 setlength,这正是我想要做的。

非常感谢任何帮助,谢谢大家。

最佳答案

作为参数的数组类型需要有一个名称。所以:

type TStringArray = array of string;
procedure DoStuffWithArray(var passedarray: TStringArray);

然后就可以了。

但是,如果您需要动态大小的字符串组,您可能会发现 TStringList 更容易使用。

关于delphi - 对通过引用传递到过程的数组执行 SetLength,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2890406/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com