Sign in Join
FPDoc Onlineexperiment

TCollection.Free procedure

Member of TCollectionIn unit Objects

Free item from collection, calling it's destructor.

Declaration

pascal
procedure Free(Item: Pointer)

Description

Free Deletes Item from the collection, and calls the destructor Done of the object.

Errors

If the Item is not in the collection, Error will be called with coIndexError.

See also

Example: ex30

pascal
Program ex30;

{ Program to demonstrate the TCollection.Free method }

Uses Objects,MyObject; { For TMyObject definition and registration }

Var C : PCollection;
    M : PMyObject;
    I : Longint;

begin
  Randomize;
  C:=New(PCollection,Init(120,10));
  For I:=1 to 100 do
    begin
    M:=New(PMyObject,Init);
    M^.SetField(I-1);
    C^.Insert(M);
    end;
  Writeln ('Added 100 Items.');
  With C^ do
    While Count>0 do Free(At(Count-1));
  Writeln ('Freed all objects.');
  Dispose(C,Done);
end.

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.