hanipino
28-12-2008, 04:15 PM
منذ قليل فقط واجهتنى مشكلة فى تحويل كود معين الى Function . لان هذا الاخير يحتوى على 3 قيم
يتم اخراجهم فى نفس الوقت . و كنت لااعرف كيف تكون Function قادرة على اخراج اكثر من Result
فقمت بمحاولت بحث فى نت , و كانت اول محاولة ناجحة (google بالمرصاد)
احببت ان اضع هذه المشاركة فى هدا القسم . لاننى اعتقد انها مفيدة جدا , اضافتا الى ذالك انها
تتزامن مع درس الاجراءات و الدوال .
ربما سبقت الاحداث قليلا لان الدروس لا تزال لم تتطرق الى المصفوفات . :)
مثال :
Type ArrayValue = Array[0..2]of Integer;
Function Value(Int:Integer):ArrayValue;
begin
Result[0]:=Int*2;
Result[1]:=Int*4;
Result[2]:=Int*8;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:=inttostr(Value(5)[0]);
edit2.Text:=inttostr(Value(7)[1]);
edit3.Text:=inttostr(Value(9)[2]);
end;
:)
يتم اخراجهم فى نفس الوقت . و كنت لااعرف كيف تكون Function قادرة على اخراج اكثر من Result
فقمت بمحاولت بحث فى نت , و كانت اول محاولة ناجحة (google بالمرصاد)
احببت ان اضع هذه المشاركة فى هدا القسم . لاننى اعتقد انها مفيدة جدا , اضافتا الى ذالك انها
تتزامن مع درس الاجراءات و الدوال .
ربما سبقت الاحداث قليلا لان الدروس لا تزال لم تتطرق الى المصفوفات . :)
مثال :
Type ArrayValue = Array[0..2]of Integer;
Function Value(Int:Integer):ArrayValue;
begin
Result[0]:=Int*2;
Result[1]:=Int*4;
Result[2]:=Int*8;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:=inttostr(Value(5)[0]);
edit2.Text:=inttostr(Value(7)[1]);
edit3.Text:=inttostr(Value(9)[2]);
end;
:)