Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.10;
Скачать: CL | DM;

Вниз

Динамические массивы   Найти похожие ветки 

 
LongIsland ©   (2003-01-31 16:19) [0]

Существует ли какая-либо принципиальная разница между такими формами записи:
если
var
A: array of TSomeType;

то
A:=nil;
или же
SetLength(A, 0);
???


 
Jel ©   (2003-01-31 16:34) [1]

Думаю да.

В первом случае указатель на кусок памяти, выделенный компилятором под массив будет потерян и освободится только при завершении программы.

Во втором случае будет изменен размер выделенного участка памяти, а освободившаяся память будет сразу возвращена системе.


 
LongIsland ©   (2003-01-31 16:41) [2]

:-)
> выделенный компилятором под массив будет потерян и освободится
> только при завершении программы

То есть плодимся и размножаемся:-)

Хорошо. А возможен ли случай, когда первый случай предпочтительнее?


 
uw ©   (2003-01-31 17:23) [3]

Topic Dynamic arrays

Dynamic-array variables are implicitly pointers and are managed by the same reference-counting technique used for long strings. To deallocate a dynamic array, assign nil to a variable that references the array or pass the variable to Finalize; either of these methods disposes of the array, provided there are no other references to it. Dynamic arrays of length 0 have the value nil. Do not apply the dereference operator (^) to a dynamic-array variable or pass it to the New or Dispose procedure.



 
LongIsland ©   (2003-01-31 17:47) [4]


> uw © (31.01.03 17:23)

А я все думаю, где я это видел?:-)

Соррррри, пятница - день тяжелый, тяжелее понедельника:-)

СПАСИБО!



Страницы: 1 вся ветка

Текущий архив: 2003.02.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
14-29101
Anatoly Podgoretsky
2003-01-26 02:04
2003.02.10
Именинники 26 января


1-28894
XPatriot[d.m.b]
2003-01-30 20:55
2003.02.10
Графическая область


8-28934
MikeIp
2002-10-29 10:19
2003.02.10
Бордюр шрифта (Outline)


1-28837
anatolyk
2003-02-02 20:38
2003.02.10
ActionList


6-28980
Gamar
2002-12-16 09:31
2003.02.10
TNMHTTP и прочее