Механизм динамического выделения памяти в Pascal работает следующим образом: 2
- Выделение памяти под динамическую переменную осуществляется процедурой New. 2 В результате обращения к ней указатель получает значение, соответствующее адресу в динамической памяти, начиная с которого можно разместить данные. 2
- Освобождение динамической памяти осуществляется процедурой Dispose. 2 Она освобождает память, занятую динамической переменной, при этом значение указателя становится неопределённым. 2
Также для более гибкого распределения памяти можно использовать процедуру GetMem. 3 Она воспринимает два параметра: переменную-указатель, для которой нужно распределить память, и число распределяемых байт. 3
При выходе из программы операционная система автоматически освобождает всю память, выделенную программой. 5