一个数组 setlength 为10 ,后来想长度增加1 ,原先的数据不变,请问怎么操作?

解决方案 »

  1.   

    setlength(xx, 11)就可以啊,
    原有数据会保留的
      

  2.   

    帮助中有说明的
    procedure SetLength(var S; NewLength: Integer);DescriptionS is a Delphi string or dynamic-array variable.NewLength is the new number of characters or elements in S.For a short-string variable, SetLength simply sets the length-indicator character (the character at S[0]) to the given value. In this case, NewLength must be a value between 0 and 255.For a long-string or dynamic-array variable, SetLength reallocates the string or array referenced by S to the given length. Existing characters in the string or elements in the array are preserved, but the content of newly allocated space is undefined. The one exception is when increasing the length of a dynamic array in which the elements are types that must be initialized (strings, Variants, Variant arrays, or records that contain such types). When S is a dynamic array of types that must be initialized, newly allocated space is set to 0 or nil.
      

  3.   

    setlength(xx, High(xx)+1);自动扩容,但要求必须是动态数组
      

  4.   

    var
     MyArray:Array of Byte;SetLength(MyArray, High(MyArray)+2); MyArray[High(MyArray)]:=100;
      

  5.   

    setlength(xx, 11)就可以啊, 
    原有数据会保留的