تابع (function) | گولنگ به زبان ساده
یک ماه پیش
تابع به ما کمک میکند تا بخشهای مختلف یک برنامه را از هم تفکیک کنیم و به آن نظم بیشتری بدهیم.
تابع یک بلوک مستقل از کد است که می تواند ورودی هایی (پارامترها) بگیرد, عملیاتی روی آن ها انجام دهد و سپس نتیجه ای (خروجی) تولید کند.
تعریف و فراخوانی تابع
برای تعریف تابع از کلمه کلیدی func استفاده میکنیم:
تابع به ما این امکان را می دهد که بخشی از برنامه را تنها یکبار بنویسیم و هر زمان که نیاز است آن را فراخوانی کنیم.
در مثال بالا یکبار تابع hello را تعریف کردیم و ۳ بار آن را فراخوانی کردیم که باعث میشود متن hello world سه بار در صفحه چاپ شود.
پارامترهای ورودی و خروجی
تابع میتواند یک یا چندین مقدار را به عنوان ورودی (پارامتر) بپذیرد. پارامترها یا ورودی های یک تابع, متغیرهایی هستند که با ویرگول از هم جدا شده اند.
در مثال بالا تابع introduce را تعریف کردیم که دو مقدار name و age را در صفحه چاپ میکند. این تابع را سه بار با مقادیر مختلف فراخوانی کردیم.
دستور return باعث خاتمه کار تابع و همچنین برگرداندن مقادیر میشود. برای برگرداندن مقادیر به خروجیِ تابع باید نوع مقادیر را مشخص کرد.
در مثال بالا , خط آخر از تابع halt اجرا نمیشود زیرا قبل از آن return باعث خروج از تابع میشود.
در گولنگ یک تابع میتواند بیشتر از یک مقدار را برگرداند. در هنگام فراخوانی تابع اگر به یک یا چند مقدار برگشتی نیازی ندارید میتوانید با استفاده از ـ آنها را نادیده بگیرید.
همانند پارامترهای ورودی, میتوان پارامترهای خروجی را نیز نامگذاری کرد. در صورتی که پارامتر های خروجی را نامگذاری کنید با return کردن باعث خاتمه تابع و برگرداندن مقادیر پارامترهای خروجی میشوید.
در مثال بالا در خط آخر از تابع user تنها return را بدون هیچ آرگومانی صدا زدیم که این باعث برگرداندن مقادیر name و age به خروجی میشود.
تابع بازگشتی
به تابعی که خودش را فراخوانی میکند تابع بازگشتی می گویند. برای مثال در کد زیر فاکتوریل را با استفاده از تابع بازگشتی محاسبه می کنیم:
قسمت قبلی: نوع داده map | گولنگ به زبان ساده
قسمت بعدی: نوع داده struct | گولنگ به زبان ساده