کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش توابع در Golang

در زبان برنامه نویسی Go توابع بلوک های اصلی ساختار برنامه هستند. یک تابع برای تقسیم یک مسئله بزرگ به وظایف کوچکتر استفاده می شود. ما می توانیم یک تابع را چندین بار فراخوانی کنیم، از این رو توابع قابلیت استفاده مجدد کد را ارتقا می دهند.

3 نوع عملکرد در Go وجود دارد:

  • توابع نرمال با یک شناسه
  • توابع ناشناس یا لامبدا
  • متد (یک تابع با گیرنده)

پارامترهای تابع، مقادیر بازگشتی، همراه با انواع داده، function signature نامیده می شود.

تابع را نمی توان در داخل تابع دیگری فراخوانی کرد. اگر می‌خواهیم به این هدف برسیم، می‌توانیم این کار را با تابع Anonymous انجام دهیم.

مثال

package main  
import "fmt"  
type Employee struct {  
   fname string  
   lname string  
}  
func (emp Employee) fullname(){  
   fmt.Println(emp.fname+" "+emp.lname)  
}  
func main() {  
   e1 := Employee{ "پیمان","کلانتری"}  
   e1.fullname()  
}  

خروجی:

پیمان کلانتری

تابع بازگشتی در زبان Go

نمونه ای از تابع با مقدار بازگشتی :

package main  
import (  
   "fmt"  
)  
func fun() int {  
   return 123456789  
}  
func main() {  
   x := fun()  
   fmt.Println(x)  
}  

خروجی:

123

تابع بازگشتی چندگانه در زبان Go

بیایید نمونه ای از تابعی را ببینیم که n عدد از نوع int را به عنوان آرگومان می گیرد و دو مقدار int را برمی گرداند. مقادیر برگشتی در تابع فراخوانی در یک تخصیص موازی دریافت می شوند.

مثال Go function multiple return

package main  
    import (  
       "fmt"  
    )  
    func main() {  
       fmt.Println(addAll(10,15,20,25,30))  
    }  
    func addAll(args ... int)(int,int)  {  
       finalAddValue:=0  
       finalSubValue:=0  
       for _,value  := range args{  
          finalAddValue += value  
          finalSubValue -= value  
       }  
       return finalAddValue,finalSubValue  
    }  

خروجی:

100 -100
1402/04/11 960
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...