Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
1-28735
Opryshok
2003-01-31 19:09
2003.02.10
Как изменить рисунок но кнопке Пуск/Start?


6-28981
Verner
2002-12-16 15:34
2003.02.10
Локальный порт для клиента TCP


4-29165
Big_Rom
2002-12-27 20:21
2003.02.10
как програмно поменять размер страницы принтера


3-28684
Mahbyf
2003-01-24 15:01
2003.02.10
Удалить повторяющиеся записи


3-28674
shev
2003-01-24 13:53
2003.02.10
Package - Как выполнить процедуру из Package




   Наверх