diff options
Diffstat (limited to 'packages/fcl-stl/doc/priorityqueueexample.pp')
-rw-r--r-- | packages/fcl-stl/doc/priorityqueueexample.pp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/packages/fcl-stl/doc/priorityqueueexample.pp b/packages/fcl-stl/doc/priorityqueueexample.pp new file mode 100644 index 0000000000..32756bc2d4 --- /dev/null +++ b/packages/fcl-stl/doc/priorityqueueexample.pp @@ -0,0 +1,30 @@ +{$mode objfpc} + +uses gpriorityqueue; + +type + lesslli = class + public + class function c(a,b: longint):boolean;inline; + end; + +class function lesslli.c(a,b: longint):boolean;inline; +begin + c:=a<b; +end; + +type priorityqueuelli = specialize TPriorityQueue<longint, lesslli>; + +var data:priorityqueuelli; i:longint; + +begin + data:=priorityqueuelli.Create; + for i:=1 to 10 do + data.Push(random(1000)); + while not data.IsEmpty do begin + writeln(data.Top); + data.Pop; + end; + + data.Destroy; +end. |