View Full Version : برنامه نویسی توابع در پاسکال
moein_sql
پنج شنبه 02 اردیبهشت 1389, 09:35 صبح
با سلام خدمت همه دوستان.
یه سوال>
آیا میشه توی پاسکال توابع تو در تو نوشت؟ یعنی اینکه یک تابع داشت که یکی از پارامتر هاش یه تابع باشه؟ یه چیز شبیه این
function x (i:integer ; function y (s:string):string):integer
Zahed2008
پنج شنبه 02 اردیبهشت 1389, 10:50 صبح
سلام دوست عزیز، راستش بطور دقیق نمی دونم ولی این طوریشو دیدم قبلا:
function x (i:integer; s:string ):integer
begin
...
s := y (s);
...
end;
vcldeveloper
پنج شنبه 02 اردیبهشت 1389, 11:50 صبح
تعریفی به شکل:
function x (i:integer ; function y (s:string):string):integer
معنی نداره؛ چون function y(s: string): string خودش یعنی y: string.
توی پاسکال می تونید توابع تو در تو داشته باشید، یعنی:
function X(a: Integer): string;
function Y: string;
begin
Result := 'Test';
end;
begin
Result := Copy(Y,1,a);
end;
همچنین میشه به جای آرگومان یک تابع، مقدار یک تابع را ارسال کرد:
اگر دو تابع فرضی با تعریف زیر داشته باشیم:
function Y: string;
function X(Str: string, Num: Integer): string;
میشه X را به صورت زیر فراخوانی کرد:
MyStr := X(Y,10);
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.