RAD Studio (Common)
ContentsIndex
PreviousUpNext
E2246: Need to specify at least one dimension for SetLength of dynamic array (Delphi)

The standard procedure SetLength has been called to alter the length of a dynamic array, but no array dimensions have been specified.

program Produce;

  var
    arr : array of integer;

begin
  SetLength(arr);
end.

The SetLength in the above example causes an error since no array dimensions have been specified.

program solve;

  var
    arr : array of integer;

begin
  SetLength(arr, 151);
end.

To remove this error from your program, specify the number of elements you want the array to contain.

Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!