GoDasturchi
Named Return Values

Named Return Values

Nomlangan qaytish qiymatlari

Multiple Return Values darsida siz func Divide(a, b float64) (float64, error) kabi imzolarni yozgansiz. Go yana bir imkoniyat beradi: qaytish qiymatlariga nom berish. Nomlangan qaytish qiymatlari funksiya boshida, var bilan e'lon qilingandek, avtomatik ravishda nol qiymat bilan boshlanadi.

example.go
func Divide(a, b float64) (result float64, err error) {
    if b == 0 {
        err = errors.New("division by zero")
        return  // "yalang'och" (naked) return
    }
    result = a / b
    return  // result va err joriy qiymatlari bilan qaytadi
}

return hech qanday qiymatsiz yozilganda (naked return), funksiya result va errning joriy qiymatlarini qaytaradi — ularni qayta yozish shart emas. Bu qisqa funksiyalarda qulay, lekin uzun funksiyalarda o'qishni qiyinlashtirishi mumkin, shuning uchun ko'pincha faqat kalitli, aniq nomlangan qaytish qiymatlariga ega, qisqa funksiyalarda ishlatiladi.

>_ Exercise

Divide(a, b float64) (result float64, err error) funksiyasini nomlangan qaytish qiymatlari bilan yozing. Agar b nolga teng bo'lsa, errni "division by zero" xatosiga tenglashtirib, yalang'och return qiling. Aks holda resultni hisoblab, yalang'och return qiling.

Stuck? Reveal a hint to help you.

Hints (0/3)

Key Takeaway

Key Takeaway:

Nomlangan qaytish qiymatlari funksiya imzosida e'lon qilinadi va avtomatik nol qiymatdan boshlanadi. Yalang'och return ularning joriy qiymatlarini qaytaradi — bu qisqa funksiyalarda qulay, lekin suiiste'mol qilinmasligi kerak.

NEXT UP

Panic and Recover

OUTPUT

$ go run main.go
Kodingizni ishga tushiring

Named Return Values

Nomlangan qaytish qiymatlari

Multiple Return Values darsida siz func Divide(a, b float64) (float64, error) kabi imzolarni yozgansiz. Go yana bir imkoniyat beradi: qaytish qiymatlariga nom berish. Nomlangan qaytish qiymatlari funksiya boshida, var bilan e'lon qilingandek, avtomatik ravishda nol qiymat bilan boshlanadi.

example.go
func Divide(a, b float64) (result float64, err error) {
    if b == 0 {
        err = errors.New("division by zero")
        return  // "yalang'och" (naked) return
    }
    result = a / b
    return  // result va err joriy qiymatlari bilan qaytadi
}

return hech qanday qiymatsiz yozilganda (naked return), funksiya result va errning joriy qiymatlarini qaytaradi — ularni qayta yozish shart emas. Bu qisqa funksiyalarda qulay, lekin uzun funksiyalarda o'qishni qiyinlashtirishi mumkin, shuning uchun ko'pincha faqat kalitli, aniq nomlangan qaytish qiymatlariga ega, qisqa funksiyalarda ishlatiladi.

>_ Exercise

Divide(a, b float64) (result float64, err error) funksiyasini nomlangan qaytish qiymatlari bilan yozing. Agar b nolga teng bo'lsa, errni "division by zero" xatosiga tenglashtirib, yalang'och return qiling. Aks holda resultni hisoblab, yalang'och return qiling.

Stuck? Reveal a hint to help you.

Hints (0/3)

Key Takeaway

Key Takeaway:

Nomlangan qaytish qiymatlari funksiya imzosida e'lon qilinadi va avtomatik nol qiymatdan boshlanadi. Yalang'och return ularning joriy qiymatlarini qaytaradi — bu qisqa funksiyalarda qulay, lekin suiiste'mol qilinmasligi kerak.

NEXT UP

Panic and Recover