[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Objects' (#rtl)

# TCollection.Delete

Delete an item from the collection, but does not destroy it.

## Declaration

Source position: objects.pp line 422

`procedure TCollection.Delete(`
`Item: Pointer`
`);`

## Description

Delete deletes Item from the collection. It doesn't call the item's destructor, though. For this the Free call is provided.

## Errors

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

## See also

TCollection.AtDelete |  | Delete item at certain position.
TCollection.Free |  | Free item from collection, calling it's destructor.

## Example

    Program ex31;

    { Program to demonstrate the TCollection.Delete 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 Delete(At(Count-1));
      Writeln ('Freed all objects');
      Dispose(C,Done);
    end.

Documentation generated on: May 14 2021