Помощь - Поиск - Пользователи - Календарь
Полная версия: Увеличение размера динамического массива
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
sheka
Цитата
Procedure TArray.Resize(sz: Word);
Var p: PArrType;
Begin
If sz <= GetSize Then Exit;

p := Allocate(sz);
FillChar(p^, sz * SizeOf(TType), 0); //Зачем эта строка? Без нее тоже работает
move(arr^, p^, GetSize * SizeOf(TType));
DeAllocate(GetSize);
SetSize(sz); arr := p
End;

Взято из
http://volvo71.narod.ru/faq_folder/dyn_arr.htm ---> http://volvo71.narod.ru/faq_folder/Array.rar
IUnknown
Привычка такая - обнулять память, с которой будем работать. Ибо мне мусор в массиве не нужен, а если я не обнулю содержимое выделенной памяти - он там будет... Ведь Resize можно вызывать не только из Concat, как я показал, я ж могу его вызвать и в любом другом месте, правда?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.