问题
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.
来源:https://stackoverflow.com/questions/3113296/is-a-dynamic-array-automatically-deallocated-when-it-goes-out-of-scope