ВУЗ:
Составители:
Рубрика:
Пример функции обработки ошибок.
function HeapFunc(Size: Word): Integer; far;
begin
HeapFunc := 1;
end;
Когда эта функция установлена, New и GetMem будут возвращать nil при невозможности распре-
делить память, не приводя к аварийному завершению программы.
12. Процедуры и функции
для работы с указателями и адресами
Процедура Dispose. Уничтожает динамическую переменную и возвращает в кучу фрагмент памя-
ти, который ранее был зарезервирован за
типизированным указателем (TP). Обращение:
Dispose(TP)
Процедура FreeMem. Уничтожает динамическую переменную данного размера (Size) и возвращает
в кучу фрагмент памяти, который ранее был зарезервирован за нетипизированным указателем (P). Об-
ращение:
FreeMem(P, Size)
Процедура GetMem. Создает новую динамическую переменную заданного размера и устанавливает
переменную-указатель для нее. Обращение:
GetMem(P, Size)
Процедура Mark. Запоминает текущее состояние указателя кучи (HeapPTR) в переменной-указателе
(PTR).
Используется совместно с процедурой Release для освобождения части кучи. Обращение:
Mark(PTR)
Процедура New. Создает новую динамическую переменную и устанавливает на нее переменную-
указатель. Обращение:
New(TP)
Процедура Release. Обращение:
Release(PTR)
Освобождает участок кучи от адреса, записанного в PTR (процедурой Mark), до конца кучи.
Функция MaxAvail. Возвращает размер наибольшего непрерывного свободного блока кучи, соот-
ветствующей размеру наибольшей динамической переменной
, которая может быть распределена в момент
Вызова MaxAvail. Тип результата - Longint. Обращение:
MaxAvail
Функция MemAvail. Возвращает количество имеющихся в куче свободных байт. Тип результата -
Longint. Обращение:
MemAvail
Функция Addr. Возвращает адрес заданного объекта V (имя любой переменной, процедуры, функ-
ции). Обращение:
Пример функции обработки ошибок. function HeapFunc(Size: Word): Integer; far; begin HeapFunc := 1; end; Когда эта функция установлена, New и GetMem будут возвращать nil при невозможности распре- делить память, не приводя к аварийному завершению программы. 12. Процедуры и функции для работы с указателями и адресами Процедура Dispose. Уничтожает динамическую переменную и возвращает в кучу фрагмент памя- ти, который ранее был зарезервирован за типизированным указателем (TP). Обращение: Dispose(TP) Процедура FreeMem. Уничтожает динамическую переменную данного размера (Size) и возвращает в кучу фрагмент памяти, который ранее был зарезервирован за нетипизированным указателем (P). Об- ращение: FreeMem(P, Size) Процедура GetMem. Создает новую динамическую переменную заданного размера и устанавливает переменную-указатель для нее. Обращение: GetMem(P, Size) Процедура Mark. Запоминает текущее состояние указателя кучи (HeapPTR) в переменной-указателе (PTR). Используется совместно с процедурой Release для освобождения части кучи. Обращение: Mark(PTR) Процедура New. Создает новую динамическую переменную и устанавливает на нее переменную- указатель. Обращение: New(TP) Процедура Release. Обращение: Release(PTR) Освобождает участок кучи от адреса, записанного в PTR (процедурой Mark), до конца кучи. Функция MaxAvail. Возвращает размер наибольшего непрерывного свободного блока кучи, соот- ветствующей размеру наибольшей динамической переменной, которая может быть распределена в момент Вызова MaxAvail. Тип результата - Longint. Обращение: MaxAvail Функция MemAvail. Возвращает количество имеющихся в куче свободных байт. Тип результата - Longint. Обращение: MemAvail Функция Addr. Возвращает адрес заданного объекта V (имя любой переменной, процедуры, функ- ции). Обращение:
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »