Is a dynamic array automatically deallocated when

2019-04-19 02:36发布

问题:

in this example

procedure foobar;
var tab:array of integer;
begin
  setlength(tab,10);
end;

is the array destroyed or the memory is leaking?

回答1:

The memory is freed. (That is, no memory leak!)



回答2:

The array is automatically freed, but I've seen obscure cases where it isn't for some reason. I solved it by setting the array to nil.