rt

解决方案 »

  1.   

    一般不用用完后,SetLength(数组,0)
      

  2.   

    数组是生存期管理型的变量,会自动释放。
    但有的时候(动态数组占用大量内存的时候),需要手动释放。
    你可以这样做:
    var
      strArray: array of string;
    begin
      SetLength(strArray, 100);
      strArray := nil; //释放
    end;
      

  3.   


    SetLength(arr,100);
    SetLength(arr,0); 這是DELPHI封裝的給動態數組分配內存的函數,實質最終也是調用 GetMem  AllocMem  這類的來分配內存的。
      

  4.   

    动态数组有引用计数来自动管理生命周期大多数情况下是不需要手动释放的
    string也可以看成是动态数组。
      

  5.   

    动态数组一般情况下是不需要手动释放的,SETLENG(ARR,0);
      

  6.   

    Delphi有自己释放的机制,为何在某些情况下还要手动释放,不解?