Golang'da adlandırılmış dönüş parametrelerine sıklıkla adlandırılmış parametreler denir. Golang, fonksiyonların dönüş parametrelerinin veya sonuçlarının fonksiyon imzasında veya tanımında isimlendirilmesine olanak tanır. Ya da fonksiyon tanımında dönüş değişkenlerini açıkça adlandırmak olduğunu söyleyebiliriz. Temel olarak return ifadesiyle değişken adını belirtme gereksinimini ortadan kaldırır . Adlandırılmış dönüş parametreleri veya adlandırılmış parametreler kullanarak, fonksiyonun sonunda return anahtar sözcüğünü kullanarak sonucu çağırana döndürebilirsiniz. Bu kavram, bir fonksiyonun birden fazla değer döndürmesi gerektiğinde sıklıkla kullanılır. İşte kullanıcıların kolaylığı ve kod okunabilirliğini arttırmak için Golang bu olanağı sağlıyor.

Adlandırılmış dönüş parametrelerini bildirin
Adlandırılmış bir sonuç veya dönüş parametresi bildirmek için, fonksiyon imzasının dönüş tipi kısmını kullanmanız yeterlidir. Aşağıda Golang'da bir fonksiyonu bildirmek için genel söz dizimi gösterilmektedir. Adlandırılmış dönüş parametresi olmayan bir fonksiyonu bildirmenin sözdizimi şöyledir:
func function_name(Parameter-list)(Return_type){
// function body.....
}
Burada Return_Type isteğe bağlı olup fonksiyonun döndüreceği değerin türünü içerir. Eğer fonksiyonunuzda Return_Type kullanıyorsanız , o zaman fonksiyonunuzda return ifadesini kullanmanız gerekir. Adlandırılmış bir return
argümanı
olan bir fonksiyonu bildirmenin sözdizimi şöyledir:
func function_name(Parameter-list)(result_parameter1 data-_type, result_parameter2 data_type, ….){
// function body…..
return
}
Burada, (result_parameter1 data-_type, result_parameter2 data_type, ….) döndürülen argümanların isimleri ve tipleri ile birlikte listesidir. n sayıda adlandırılmış dönüş parametresi bildirebilirsiniz .
![Golang'da adlandırılmış dönüş parametreleri Golang'da adlandırılmış dönüş parametreleri]()
Örnek: Örnek: Aşağıdaki programda func calculator(a, b int) (mul int, div int) kod satırı adlandırılmış return argümanlarını içermektedir. Fonksiyonun sonundaki return ifadesi herhangi bir parametre içermez. Go derleyicisi parametreleri otomatik olarak döndürecektir.
// Chương trình Go mình họa
// cách dùng đối số trả về được đặt tên
package main
import "fmt"
// Phương thức chính
func main() {
// tại đây gọi hàm này
// hàm trả về hai giá trị
m, d := calculator(105, 7)
fmt.Println("105 x 7 = ", m)
fmt.Println("105 / 7 = ", d)
}
// hàm có các đối số được đặt tên
func calculator(a, b int) (mul int, div int) {
// tại đây phép gán đơn giản sẽ
// khởi tạo giá trị cho nó
mul = a * b
div = a / b
// tại đây bạn sẽ có từ khóa return
// không có bất kỳ tham số kết quả nào
return
}
Sonuç:
105 x 7 = 735
105 / 7 = 15
Önemli Not:
- Tüm dönüş argümanlarının tipleri ortak olarak adlandırılmışsa veya aynıysa, ortak bir veri tipi belirtebilirsiniz. Daha iyi anlamak için aşağıdaki kodu yukarıda okuduğunuz örnekle karşılaştırın.
// hàm có đối số đã được đặt tên
func calculator(a, b int) (mul, div int) {
- Burada mul ve div değişkenlerinin ikisi de int tipindedir . Yani, genel veri türlerine sahip adlandırılmış argümanları da fonksiyon değişkenleri (yani a ve b) olarak bildirebilirsiniz
- Adlandırılmış dönüş parametrelerinin kullanılması, fonksiyon imzasını okuyarak dönüş parametreleri hakkında bilgi edinilebilmesi nedeniyle kod okunabilirliğini artırır.
- Adlandırılmış bir return parametresi kullanıldıktan sonra return ifadesi genellikle Çıplak veya Tam return olarak adlandırılır .
- Golang varsayılan olarak tüm adlandırılmış değişkenleri sıfır değeriyle tanımlar ve fonksiyonlar bunları kullanabilir. Fonksiyon değerleri değiştirmezse otomatik olarak sıfır değeri döndürülür.
- Adlandırılmış dönüş parametrelerini başlatmak için kısa bildirim operatörünü ( := ) kullanırsanız , bu operatör Go derleyicisi tarafından zaten başlatıldığı için bir hata verecektir. Yani adlandırılmış dönüş parametrelerine değer atamak için basit atama ( = ) kullanabilirsiniz .
// hàm có đối số được đặt tên
func calculator(a, b int) (mul int, div int) {
// tại đây, nó sẽ báo lỗi
// dưới dạng tham số đã được xác định
// trong chữ ký hàm
mul := a * b
div := a / b
// tại đây bạn có từ khóa return
// không có bất kỳ tham số kết quả nào
return
}
- Adlandırılmış dönüş argümanları veya minimal dönüş ifadeleri yalnızca kısa fonksiyon imzaları için iyidir. Daha uzun fonksiyonlar için, kodun okunabilirliğini korumak adına sonuç parametrelerini açıkça döndürün (adlandırılmış dönüş parametreleri kullanmayın).
- Adlandırılmış dönüş argümanları durumunda, minimal veya basit bir dönüş ifadesi gereklidir.