Přidáno 1 182 bajtů,
5. 10. 2012, 13:56 Vytvoří novou dynamickou proměnnou a vloží její adresu do proměnné typu ukazatel.
;Deklarace
procedure New(var P: Pointer [ , Init: Constructor ]);
;Režim
:Windows, Reálný, Chráněný
;Poznámky
:Deklarace [[New]] byla rozšířena také pro alokaci objektu na haldě, pokud jako druhý parametr předáte volání konstruktoru objektu, jako např.:
New(T, Init(360, 174));
:Další rozšíření umožňuje použití procedury [[New]] jako funkce, která alokuje a vrátí dynamickou proměnnou určeného typu.
:Jestliže volání je ve formě [[New]](T), T může být libovolného ukazatelového typu.
:Jestliže volání je ve formě [[New]](T, Init), T musí být ukazatelem na objektový typ a Init musí odkazovat na konstruktor tohoto objektového typu. V obou případech je typem výsledku funkce T.
;Viz také
:[[Dispose]]
:[[FreeMem]]
:[[GetMem]]
:[[Release]]
Vzorový příklad
{Dispose.PAS}
{Vzorový příklad pro procedury New a Dispose.}
type
Str18 = string[18];
var
P: ^Str18;
begin
New(P);
P^ := 'Teď ji uvidíte...';
Dispose(P); { Teď ne... }
end.
[[Category:System]]
[[Category:Procedúry System]]