TSortedCollection.Compare function
Compare two items in the collection.
Declaration
function Compare(Key1: Pointer; Key2: Pointer): Sw_Integer; virtualDescription
Compare is an abstract method that should be overridden by descendent
objects in order to compare two items in the collection. This method is used
in the
Search method and in the
Insert method to determine the ordering of
the objects.
The function should compare the two keys of items and return the following function results:
- Result < 0
- If
Key1is logically beforeKey2(Key1<Key2) - Result = 0
- If
Key1andKey2are equal. (Key1=Key2) - Result > 0
- If
Key1is logically afterKey2(Key1>Key2)
Errors
An 'abstract run-time error' will be generated if you call
TSortedCollection.Compare directly.
See also
Example: mysortc
Unit MySortC;
Interface
Uses Objects;
Type
PMySortedCollection = ^TMySortedCollection;
TMySortedCollection = Object(TSortedCollection)
Function Compare (Key1,Key2 : Pointer): Sw_integer; virtual;
end;
Implementation
Uses MyObject;
Function TMySortedCollection.Compare (Key1,Key2 : Pointer) :sw_integer;
begin
Compare:=PMyobject(Key1)^.GetField - PMyObject(Key2)^.GetField;
end;
end.An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
