delphi中动态数组创建只能用setlength吗,有没有其它方法(比如c中的动态数组),若用setlength如何释放掉它呢?

解决方案 »

  1.   

    声明数组:
    S:Array of String;
    设置长度:
    SetLength(S,10);
    释放:
    SetLength(S,0)
      

  2.   

    谢谢,heixiu1980(迷茫ing),那能不能象c中的那样用指针来完成呢?
      

  3.   

    ljmanage(过客)
    那请问c中relloc函数在delphi中对应的是什么呢?
      

  4.   

    实际上,数组本身具有自动垃圾回收机制,不像c需要手工进行资源回收,你只管用,delphi会自动处理的;
      

  5.   

    for i=0 to length(S)-1 do s[i].free;
    SetLength(S,0);
      

  6.   

    声明数组:
       S:Array of String;
     设置长度:
       SetLength(S,10);
     释放:
       s:=nil;
      

  7.   

    agree with  lwgbest(李文)
      

  8.   

    c中动态创建一个连续的空间用malloc在delphi中对应getmem
    c中在malloc的基础上要在添加新的空间用relloc那它在delphi中对应的是什么呢?
      

  9.   

    声明数组:
       S:Array of String;
     设置长度:
       SetLength(S,5);
     释放:
       s:=nil;或者SetLength(S,0)