如何向一个function传递一个动态的二维数组?(50分)

  • 主题发起人 主题发起人 nuaaliao
  • 开始时间 开始时间
N

nuaaliao

Unregistered / Unconfirmed
GUEST, unregistred user!
如何向一个function传递一个动态的二维数组?
type Tmyarray :array[0。。n,0。。m] of double

function(myarray:tmyarray)

但这样只能传递一个静态的二维数组,如何传递动态的,请大家告知
最好有一个示列
 
你必须把Function参数申明为动态的二维数组传递参数必须在Function的外面指定所传递参数的长度
例:
function sample(value:array of array of integer):integer;
begin
end;

sam :array of array of integer;

setlength(sam,10);

sample(sam);
 
最好不要直接用实参的方式传数组,又慢又耗内存,根据
你的要求,以指向这个数组的指针以及它的维数作参数就可以了,
当然在函数里由你自己控制使用这个指针,别让它出界

 
同意CheKa的方法,传送指针比较好控制
 
用variant传
 
function(var myarray:tmyarray)
用变参
 
Use const or var parameters.
 
TRow = array of integer;
TColumn = array of TRow;
function(myarray:TComlun)

 
TYPE
arr=array [0..n] of integer;

……

function a(iArr:array of arr);
 
多人接受答案了。
 
后退
顶部