我定义了一个对象,其中有个动态的多维数组属性,在方法中要用到该数组,调用时是个循环,每次数组的长度不一样,要每次改变长度,(aa:=nil;setlength(aa,i,x);).,但是确是报错,错误的指针操作,为什么,
大致的结构如下(随手写的):
type Tname =class
    begin
      private
         aa:array of array of  integer;
         ..其他参数
      public
        Setlength(i,x);
        run1();
        run2();
   Setlength(i,x)
    begin
       aa:=nil;
       setlength(aa,i,x);//第一次可以操作,以后运行到这里报错
    end;
  run1();
    begin
      run2();//这里i,x的值可能改变
      for  j:=0  to  k  do 
      begin
         setlength();//调用一下,想改变数组的长度
         ...其他函数要道数组.
      end;
    end;
  end;main()   //其实这是在另一个窗体中调用那个对象的方法,
begin
  name:=Tname.create(self);
  name.run1();//调用方法,操作.
  .....其他  
end;
难道定义数组不能作为对象属性吗??