Return last item which matches a test.
Source position: objects.pp line 455
function TCollection.LastThat( |
Test: TCallbackFunBoolParam |
):Pointer; |
This function returns the last item in the collection for which Test returns a non-nil result. Test is a function that accepts 1 argument: a pointer to an object, and that returns a pointer as a result.
None.
|
Return first item which matches a test. |
Program ex21; { Program to demonstrate the TCollection.Foreach method } Uses Objects,MyObject; { For TMyObject definition and registration } Var C : PCollection; M : PMyObject; I : Longint; Function CheckField (Dummy: Pointer;P : PMyObject) : Longint; begin If P^.GetField<56 then Checkfield:=1 else CheckField:=0; end; begin C:=New(PCollection,Init(100,10)); For I:=1 to 100 do begin M:=New(PMyObject,Init); M^.SetField(I); C^.Insert(M); end; Writeln ('Inserted ',C^.Count,' objects'); Writeln ('Last one for which Field<56 has index (should be 54) : ', C^.IndexOf(C^.LastThat(@CheckField))); C^.FreeAll; Dispose(C,Done); end.