Delphi 如何使用二维动态数组作为函数参数?

Delphi 如何使用二维动态数组作为函数参数?,delphi,Delphi,嗨 我在使用二维动态数组时遇到了一个问题。我用这个: 过程列表已删除(文件列表:整数数组的数组); Delphi给我一个编译错误 如何修复它?首先声明数组类型,然后在参数列表中使用它 type T2DIntArr = array of array of Integer; ... ListDeleted(FilesList: T2DIntArr); 定义自定义类型: type TIntArray2 = array of array of Integer; 如果只是读取ListDel

嗨 我在使用二维动态数组时遇到了一个问题。我用这个: 过程列表已删除(文件列表:整数数组的数组); Delphi给我一个编译错误
如何修复它?

首先声明数组类型,然后在参数列表中使用它

type
  T2DIntArr = array of array of Integer;

...

ListDeleted(FilesList: T2DIntArr);
定义自定义类型:

type
  TIntArray2 = array of array of Integer;
如果只是读取ListDeleted中的参数内容,请使用

 procedure ListDeleted(const FilesList: TIntArray2)
如果参数将要在内部修改,请使用

 procedure ListDeleted(var FilesList: TIntArray2)
如果要在内部修改参数,但不应将修改传播给调用方,请使用

 procedure ListDeleted(FilesList: TIntArray2)

但是请注意,最后一个声明(没有const或var)将在调用ListDeleted之前创建数组的临时副本,这对性能不是一个好主意

@micheal,如果这是对你有效的答案,你应该选择它作为接受答案(点击旁边的勾号)。如果你找到了对你有效的答案,你应该选择它作为接受答案(点击旁边的勾号)