Описание |
Процедура Dispose выходила в двух версиях.
Старшая версия - устаревший метод уничтожения объектов (Теперь вместо этого вы должны вызывать деструктор класса).
Первая версия освобождает память, используемую переменной типа указателя VariablePointer.
Вы должны использовать Dispose, когда больше не используется переменная распределённая с использованием New.
|
|
Примечания |
Предупреждение: переменная становится неопределённой после вызова Dispose. Она не устанавливает на ноль (nil).
|
|
Похожие команды |
FreeMem Освобождает память, используемую переменной
GetMem Получает указанное число байтов памяти.
New Создаёт новую переменную типа указатель
ReallocMem Позволяет изменить размер существующего блока памяти
| |
|
Пример кода : Распределение памяти для записи, присвоение, и затем избавление от неё |
type
TCustomer = Record
name : string[20];
age : Byte;
end;
var
custRecPtr : ^TCustomer;
begin // Создание записи клиента
используя 'New'
New(custRecptr);
// Присвоение ему значений
custRecPtr.name := 'Her indoors';
custRecPtr.age := 55;
// Теперь показываем эти значения
ShowMessageFmt('%s is %d',[custRecPtr.name, custRecPtr.age]);
// Теперь избавляемся от этой
распределенной записи
Dispose(custRecPtr);
end;
|
Her indoors is 55
|
|