Function Add(x,y:integer):integer;
Begin
Result:=x+y;
End;
Procedure Increase(x,y:Integer; var r:Integer);
Begin
r:=x*y;
End;
Iшкi программалардың денесiнен соң Button1 батырмасы басылғандағы оқиғаны ӛңдеушi
үзiндiсiн келесi түрде келтiруге болады:
Procedure Tform1.Button1Click(Sender:Tobject);
Procedure Add1(F:Func1; P:Proc1);
// процедуралық түлердi қолданылатын iшкi программа
Var i,k:integer;
Begin
For i:=1 to 3 do
Begin
P(i,i,k);
Memo1.Lines.Add(IntToStr( F(i,i) +k));
End;
End; // Add1
Begin // main
Add1(Add,Increase);
End; // main
Программадағы формальды параметрлер - жоғарыда келтiрiлген процедуралық түрлердiң
параметрлерi. Әр қайталауда алдымен екi санның қосындысын есептейтiн Proc1 процедуралық шама
параметр ретiнде қолданылады. Сонан кейiн Memo1 терезесiне процедуралық параметр Р және
Func1-дiң F-процедуралық параметрiнiң қосындысын шығарады. Button1 басылғандағы оқиғаны
ӛңдеушiсiнде Add1 процедурасы шақырылғанда оның нақты аргументтерi ретiнде Add және Increase
процедуралық түрлер қолданылады. Бұл қарапайым мысал процедуралық түрлердiң қолдануын
кӛрсетедi.
Достарыңызбен бөлісу: |