close
دانلود فیلم
فراخوانی تابع

فراخوانی تابع

هر زمان که به تابع نياز باشد نام آن صدا زده می شود. اين عمل فراخوانی تابع ناميده می شود. برنامه يا تابعی ک تابع را فراخوانی می کند فراخواننده تابع (function caller) ناميد می شود. هنگام فراخوانی تابع، مقدار آرگومان های تابع بايد مشخص شود.

اگر تابع مقدار برگشتی دارد هنگام فراخوانی مقدار برگشتی در یک متغیر باید ذخیره شود. يعنی سمت راست تابع علامت مساوی و یک متغیر همنوع مقدار برگشتی تابع قرار می دهیم.


مثال. تابع square به صورت زير در برنامه اصلی صدا زده می شود.

double sq = square(num);
cout << sq;
يا
cout << square(num);

مثال. فراخوانی تابعی که آرگومانی ندارد. تابع مربع اعداد 1 تا 10 را نمايش می دهد.

#include <iostream.h>
void squares();
main() {
   squares();
}
void squares() {
   int loop;
   for (loop=1;loop < 10;loop++);
      cout << loop*loop;
}


پروتوتايپ تابع

کامپایلر ++C نمی تواند تابعی را صدا بزند که چیزی درباره آن نمی داند. باید قبل از فراخوانی تابع به کامپایلر اجازه دهید بداند تابع چیست و چه کار می کند. یک راه برای انجام این کار اطمینان از نوشتن بدنه تابع قبل از فراخوانی آن است. را ه دیگر استفاده از پروتوتايپ تابع (prototype) است. پروتوتايپ تابع شرحی از نام، نوع برگشتی و نوع آرگومانهای تابع به کامپايلر ارائه می دهد. به اين ترتيب هنگام فراخوانی تابع کامپايلر صحت فراخوانی را بررسی می کند که آيا نوع و تعداد آرگومانهای ارسال شده به تابع و استفاده از مقدار برگشتی صحيح است يا خير.


مثال. پروتوتايپ تابع square.

double square(double n);


پروتوتايپ تابع مشابه اعلان تابع است منتها هميشه به سمیکولن(;) ختم می شود. یعد از تکميل تابع با استفاده از امکانcopy-and-paste اديتور می توانيد هدر تابع را کپی کرده و پروتوتايپ آنرا بسازيد. فقط دقت کنيد در انتهای آن علامت سميکولن را اضافه کنيد.

پروتوتايپ توابع بهتر است در ابتدای برنامه و قبل از تایع اصلی باشند.
در پروتوتايپ اسم متغيرهای آرگومان هم می تواند ذکر شود ولی اختياری است.

توابع در ++C در اين بخش توضيح داده می شود. توابع بلاک های مستقلی از کد هستند که کار خاصی را انجام می دهند. هنگامی که برنامه نياز به انجام آن کار دارد تابع را صدا می زند. تابع اساس برنامه نويسی ساختيافته است که باعث بالارفتن کارائی برنامه ها و آسانتر شدن برنامه نويسی می شود. نحوه ايجاد و فراخوانی تابع به علاوه متغير های محلی و نحوه ارسال و دريافت پارامترهای تابع، توابع پيش ساخته و بازگشتی نيز شرح داده می شود.

تعريف تابع
فراخوانی تابع
دستور return
ارسال مقدار به تابع
متغيرهای محلی
سربارگذاری توابع
توابع پيش ساخته
فايل های ضميمه
توابع بازگشتی


تابع (function) بلاکی ازکد است که تحت يک نام گروه بندی می شود. بدين ترتيب بلاک کد می تواند بعد با استفاده از نامش اجرا شود. اين عمل فراخوانی تابع (function call) ناميده می شود. وقتی تابعی فراخوانی می شود دستورات درون تابع اجرا می شود. در انتهای تابع اجرا به همان محلی که تابع فراخوانی شده بود برمی گردد. ممکن است پارامترهایی به تابع ارسال شود. معمولا تابع معمولا مقداری را به برنامه فراخوان برمی گرداند.

برنامه ای که از تابع استفاده می کند به صورت ساختيافته (structured) است. يعنی وظايف توسط بخش های مستقل انجام می پذيرد. برنامه نويسی ساختيافته روی طراحی به روش top-down تاکيد دارد. در اين روش مسئله به وظايف مختلف تقسيم می شود و هر وظيفه توسط يک تابع انجام می پذيرد. بدنه تایع اصلی کوچک می شود و جزئيات درون توابع قرار می گيرند. به اين ترتيب نوشتن و اشکال زدائی برنامه های پيچيده آسانتر می شود. علاوه بر اين استفاده مجدد توابع در برنامه های ديگر ميسر می شود.

هر تابع بايد تنها يک کار را انجام دهد و از انجام چند کار در يک تابع بايد پرهيز شود.


به کانال تلگرام سایت ما بپیوندید