Delphi中对象数组的使用,该怎么解决

Delphi中对象数组的使用
      Delphi对接Java 写的Webservice,调用的函数参数之一是一个一维的对象数组,已经封装好,但是我在调用的时候一直报地址错误,错误代码为:access violation at address 00000000.read of address 00000000 ; 不知道为什么。
    代码如下:
       

       setlength(ArrOfwsVouchers,rs.RecordCount);
        i:=0;
        rs.MoveFirst;
        while not rs.EOF do
        begin
            wsvoucher := WSWSVoucher.Create;
           ........
           ArrOfwsVouchers[i] :=wsVoucher.Create;
           ArrOfwsVouchers[i]:= wsVoucher;
           i := i + 1;
           rs.MoveNext;
        end;
       

       调用的代码为:
       SetLength(ArrOfwsVouchersReturn,length(ArrOfwsVouchers));     
      ArrOfwsVouchersReturn := wsVoucherPro.importVoucher(ArrOfwsVouchers,0,0,0);

      我看了下,ArrOfwsVouchers的值为:
     (([], '10020101', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, '', '2008-12-23', '', '2008-12-23', 0, 0, 0, '恒生电子', '6666', 0, 'CNY', 0, '', 20000000000, '', 1, 1, '', '', False, 0, 1, '', 0, 20000000000, 12, 2008, '', 0, 0, '', 0, '', '', 0, '', '', '产品成立', '[170231]', '1'), 
 ([], '4001', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, '', '2008-12-23', '', '2008-12-23', 0, 0, 0, '恒生电子', '6666', 20000000000, 'CNY', 0, '', 0, '', -1, 2, '', '', False, 0, 1, '', 0, 20000000000, 12, 2008, '', 0, 0, '', 20000000000, '', '', 0, '', '', '产品成立', '[170231]', '1'))
  这样的一个数组有没有问题?
   不知道开头的[]是什么意思,数组中好像没有这个值啊。
   求解答,谢谢。

------解决方案--------------------
引用:
      Delphi对接Java 写的Webservice,调用的函数参数之一是一个一维的对象数组,已经封装好,但是我在调用的时候一直报地址错误,错误代码为:access violation at address 00000000.read of address 00000000 ; 不知道为什么。
    代码如下:
       

       setlength(ArrOfwsVouchers,rs.RecordCount);
        i:=0;
        rs.MoveFirst;
        while not rs.EOF do
        begin
            wsvoucher := WSWSVoucher.Create;
           ........
           ArrOfwsVouchers[i] :=wsVoucher.Create;
           ArrOfwsVouchers[i]:= wsVoucher;
           i := i + 1;
           rs.MoveNext;
        end;
       

       调用的代码为:
       SetLength(ArrOfwsVouchersReturn,length(ArrOfwsVouchers));     
      ArrOfwsVouchersReturn := wsVoucherPro.importVoucher(ArrOfwsVouchers,0,0,0);

      我看了下,ArrOfwsVouchers的值为:
     (([], '10020101', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, '', '2008-12-23', '', '2008-12-23', 0, 0, 0, '恒生电子', '6666', 0, 'CNY', 0, '', 20000000000, '', 1, 1, '', '', False, 0, 1, '', 0, 20000000000, 12, 2008, '', 0, 0, '', 0, '', '', 0, '', '', '产品成立', '[170231]', '1'),