是这样子的,我在做huffman树的压缩.结果建完树之后我发现有些叶子结点的权值为零,所以我又必须添加一段去掉权值为零的叶子结点的程序,可这样一来我就不知道装叶子结点的数组大小具体该为多大,请大家看看这段程序!function delzero(A:array of byte;var clrcount:array of Lcolor):integer;
//函数这样定义是不仅可以返回clrcount这个数组的大小(也就是那个integer型的返回值)而且还返回了那个数组?那我在调用这个函数之前应该为对应clrcount的实参分配大小吧,可我还没得到返回值如何分配?不分配会不会出错?
var
  i,j:integer;
  cindex,index:integer;
begin
  for i:=0 to 7 do//不去掉为零的叶子前我确定树组就七个元素;
  begin
    clrcount[i].color:=i;//进行初始化;
    clrcount[i].times:=0;
  end;
  for j:=0 to (imgsize div 3)-1 do
  begin
      cindex:=(A[j]and$0F0)shr 5;
      inc(clrcount[cindex].times,1);//计算每种颜色使用的频数
  end;
  index:=0;
  for i:=0 to 7 do
  begin
    if (clrcount[i].times<>0)then
    begin
      clrcount[index]:=clrcount[i];
      clrcount[i].times:=0;
      inc(index);
    end;
  end;
  result:=index;
end;
procedure TForm1.Button7Click(Sender: TObject);
var
......
begin
  countcolor(hsvdata,clrcount1,index);//调用了上面定义的那个函数,问题是我要先给clrcount1这个数组先分配大小才能使用把,可我还不知道它的大小呢!
  ......