توابع (Functions)
تابع (Function) یک تکه کد است. فقط وقتی صدا می زنیم اجرا می شود. می توانیم داده بدهیم؛ به این داده ها پارامتر می گویند. توابع کد تکراری را کم می کنند. یک بار می نویسی، بارها استفاده می کنی.
ساخت تابع
برای ساخت تابع، نام و پرانتز را می نویسیم. نوع void یعنی خروجی ندارد.
void myFunction() {
// code to be executed
}
نکته: بدنۀ تابع داخل آکلاد است. داخلش کار دلخواه می نویسیم.
فراخوانی تابع
تابع بعد ساخت، اجرا نمی شود. باید آن را صدا بزنی.
void myFunction() {
cout << "I just got executed!";
}
int main() {
myFunction();
return 0;
}
می توانی یک تابع را چند بار صدا بزنی.
void myFunction() {
cout << "I just got executed!\n";
}
int main() {
myFunction();
myFunction();
myFunction();
return 0;
}
اعلان و تعریف تابع
هر تابع دو بخش دارد: اعلان و تعریف. اعلان یعنی امضا و نام. تعریف یعنی بدنۀ کد.
void myFunction() { // declaration
// the body of the function (definition)
}
هشدار: اگر تابع را بعد از main() تعریف کنی، بدون اعلان قبلی، خطا می شود.
int main() {
myFunction();
return 0;
}
void myFunction() {
cout << "I just got executed!";
}
// Error
راه درست: بالای main() اعلان بنویس. پایین تر تعریف کن. کد مرتب تر می شود.
// Function declaration
void myFunction();
int main() {
myFunction();
return 0;
}
// Function definition
void myFunction() {
cout << "I just got executed!";
}
تمرین مرحله ای
- یک تابع ساده بنویس.
- داخلش یک پیام چاپ کن.
- در
main()تابع را صدا بزن. - بار دوم و سوم هم صدا بزن.
پیوندها و ادامه مطالعه
برای آشنایی با حافظه، به new و delete برو. همچنین راهنمای توابع را نشانه گذاری کن. سپس بخش پارامترها را در منبع ببین.
W3Schools: Functions و W3Schools: Function Parameters برای مطالعه بیشتر هستند.
جمع بندی سریع
- تابع کد قابل استفاده دوباره است.
voidیعنی خروجی ندارد.- تابع را باید صدا بزنی.
- اعلان بالا، تعریف پایین، کد مرتب تر می شود.