PostHeaderIconDelphi. Процедура ReallocMem( var P: Pointer; Size: Integer );

Процедура ReallocMem( var P: Pointer; Size: Integer );

Модуль: System

Описание
Процедура перераспределяет память размером Size байт под динамическую переменную P.
При вызове данной процедуры указатель P должен иметь значение nil или должен указывать на динамическую переменную, память под которую была предварительно выделена с помощью процедур GetMem или ReallocMem.

Если P = nil, Size = 0, то процедура не производит никаких действий.

Если P = nil, а Size <> 0, то процедура распределяет новый блок памяти размером Size и устанавливает указатель P на начало блока. Такой вызов процедуры аналогичен обращению к процедуре GetMem.

Если P <> nil, а Size = 0, то процедура высвобождает блок памяти, на который указывает P и устанавливает P = nil. Вызов процедуры с указанными параметрами аналогичен обращению к процедуре FreeMem, но в отличие от FreeMem процедура ReallocMem очищает указатель.

Если P <> nil и Size <> 0, то процедура устанавливает размер блока памяти, выделенный ранее под динамическую переменную P, равным Size. При этом существующие данные сохраняются. Если размер блока памяти будет увеличен в размерах, то данные в новой части блока будут неопределенными. Если новый размер блока памяти не может быть выделен в текущем адресном пространстве, то он перемещается на новое место и соответственно параметр P будет указывать на новый участок памяти.

 
Copyright © 2007-2010 IsIProg.ru. All Rights Reserved.