langs a-z
This commit is contained in:
parent
db842d013d
commit
d066446780
11389 changed files with 98361 additions and 1020 deletions
34
Task/Collections/Pascal/collections-7.pascal
Normal file
34
Task/Collections/Pascal/collections-7.pascal
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
Program ex34;
|
||||
|
||||
{ Program to demonstrate the TCollection.AtInsert method }
|
||||
|
||||
Uses Objects, MyObject; { For TMyObject definition and registration }
|
||||
|
||||
Var C : PCollection;
|
||||
M : PMyObject;
|
||||
I : Longint;
|
||||
|
||||
Procedure PrintField (Dummy : Pointer; P : PMyObject);
|
||||
|
||||
begin
|
||||
Writeln ('Field : ',P^.GetField);
|
||||
end;
|
||||
|
||||
begin
|
||||
Randomize;
|
||||
C:=New(PCollection, Init(120, 10));
|
||||
Writeln ('Inserting 100 records at random places.');
|
||||
For I:=1 to 100 do
|
||||
begin
|
||||
M:=New(PMyObject, Init);
|
||||
M^.SetField(I-1);
|
||||
If I=1 then
|
||||
C^.Insert(M)
|
||||
else
|
||||
With C^ do
|
||||
AtInsert(Random(Count), M);
|
||||
end;
|
||||
Writeln ('Values : ');
|
||||
C^.Foreach(@PrintField);
|
||||
Dispose(C, Done);
|
||||
end.
|
||||
Loading…
Add table
Add a link
Reference in a new issue