比如
procedure MyProcedure;
var A:array of Integer;
begin
 SetLength(A,8000);
 //...使用A数组程序区
 最后如何释放呢?
end;

解决方案 »

  1.   

    A := nil;
    //或者
    SetLength(A, 0);
      

  2.   

    A是一个指针,所以确实可以用 A:=nil;来释放。
      

  3.   

    不可以把A看成简单的指针。
    A:=nil 比指针赋值所做的工作多得多。
      

  4.   

    非常感谢各位的帮助!我用A:=nil能成功的进行释放!
    但SetLength(A, 0);却不能
    还有我不明白为什么出了局部变量的作用域也不能自动释放!
    明天就结贴给分。
      

  5.   

    我用win2000的任务管理器测试了一下,
    好象只有A=nil;可以释放,局部数组变量出了作用域好象还是无法释放。
    SetLength(A,0);也无法释放。
      

  6.   

    A:=nil;
    SetLength(A,0);可以置空