Delphi Error – E2246 Need to specify at least one dimension for SetLength of dynamic array

Delphi Compiler Error

E2246 Need to specify at least one dimension for SetLength of dynamic array

Reason for the Error & Solution

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.

Share:

Leave A Reply

Your email address will not be published. Required fields are marked *

You May Also Like

Delphi Compiler Error E2313 Attribute – Known attribute cannot specify properties Reason for the Error & Solution No further information...
Delphi Compiler Error E2379 Virtual methods not allowed in record types Reason for the Error & Solution No further information...
Rodrigo , one of the long time Delphi Developer has been working on one of his personal project “Delphi IDE...