next up previous contents index
Next: DSeg Up: Functions and Procedures Previous: Delete

Dispose

   

Declaration:

Procedure Dispose (P : pointer) ;

Description:

Dispose releases the memory allocated with a call to New. The pointer P must be typed. The released memory is returned to the heap.

Errors:

An error will occur if the pointer doesn't point to a location in the heap.

See also:

New, Getmem, Freemem

Example
Program Example16;

{ Program to demonstrate the Dispose and New functions. }

Type SS = String[20];
     
     AnObj = Object
       I : integer;
       Constructor Init;
       Destructor Done;
       end;

Var 
  P : ^SS;
  T : ^AnObj;
  
Constructor Anobj.Init;

begin
 Writeln ('Initializing an instance of AnObj !');
end;

Destructor AnObj.Done;

begin
  Writeln ('Destroying an instance of AnObj !');
end;
  
begin
  New (P);
  P^:='Hello, World !';
  Dispose (P);
  { P is undefined from here on !}
  New(T,Init);
  T^.i:=0;
  Dispose (T,Done);
end.



Michael Van Canneyt
Thu Sep 10 14:02:43 CEST 1998