Процедура New

Создает новую динамическую переменную и устанавливает на нее указатель.

Объявление:

 Procedure New(Var P : Pointer [, Init : Constructor ]);

Режим: 

Замечания:
Объявление New было расширено, так что теперь она может также инициализировать объект распределенный в куче, если вы передаете конструктор этого объекта как второй параметр, например: New(T, Init(360, 174)); Также, обявление New было расширено, чтобы действовать как функция, возвращающая значение указателя. Параметр, передаваемый к New - тип указателя на объект, а не сам указатель. Эта функциональная форма New применима ко всем типам данных, а не только к объектным типам. Как и в ее процедурную форму, в функциональную форму New можно передавать конструктор объектного тпа как второй параметр.

Пример:

 { Пример программы для процедур New и Dispose }
 
 Type Str18 = String[18];
 
 Var P : ^Str18;
 
 Begin
  New(P);
  P^:='Сейчас переменная есть...';
  Dispose(P);  { А теперь уже нет... }
 End.

Пример программы: dispose.pas

См. также: