irfo
Moderatör
- Katılım
- 7 Ocak 2026
- Mesajlar
- 71
- Tepkime puanı
- 2
- Puanları
- 8
Go'nun Süper Gücü
Çoğu dilde bir fonksiyon sadece tek bir şey (bir int, bir string veya bir obje) döndürebilir. Eğer birden fazla şey döndürmek isterseniz bir sınıf (class) veya dizi (array) oluşturmanız gerekir.Go'da ise fonksiyonlar birden fazla değeri aynı anda döndürebilir. Bu özellik, Go'nun hata yönetimi felsefesinin temelidir.Temel Tanım
Kod:
func topla(a int, b int) int {
return a + b
}
(İpucu: Parametre tipleri aynıysa (a, b int) şeklinde kısaltılabilir).
Çoklu Geri Dönüş (Multiple Return)
Bir fonksiyon hem sonucu hem de (varsa) hatayı döndürebilir.
Kod:
func bolme(a, b float64) (float64, string) {
if b == 0 {
return 0, "Hata: Sıfıra bölünemez"
}
return a / b, "Başarılı"
}
// Kullanımı:
sonuc, mesaj := bolme(10, 2)
Variadic Fonksiyonlar (...Parametre)
Fonksiyonun kaç tane parametre alacağı belli değilse (örn: fmt.Println gibi), üç nokta ... kullanılır.
Kod:
func topla(sayilar ...int) int {
toplam := 0
for _, sayi := range sayilar {
toplam += sayi
}
return toplam
}
// Kullanımı:
topla(1, 2)
topla(10, 20, 30, 40) // İstediğin kadar gönder