Golangda değişken fonksiyonlar

Kaydolun ve günde 1000 $ kazanın ⋙

Go'daki değişkenli fonksiyonlar, bir fonksiyona değişken sayıda argüman geçirmenize olanak tanır. Bu özellik, önceden kaç argüman ileteceğinizi bilmediğinizde kullanışlıdır. Bir Golang değişkenli fonksiyonu  aynı tipte birden fazla argüman kabul eder ve hiç argüman olmadan da herhangi bir sayıda argümanla çağrılabilir.

Golang'da değişken fonksiyonlar

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

Sonuç:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

Sözdizimi:

func functionName(parameters ...Type) ReturnType {
    // Code
}

Yukarıdaki sözdiziminde:

  • parameters ...Typefonksiyonun Type türünde değişken sayıda argüman kabul edebileceğini belirtir.
  • Bir fonksiyondaki argümanlara dilim olarak erişebilirsiniz.

Golang'da belirsiz fonksiyonlar nasıl kullanılır

Variadic fonksiyonları kullanma

Değişkenli bir fonksiyon tanımlarken, yukarıdaki örnekte olduğu gibi argüman türünü üç nokta (...) ile belirtirsiniz. Fonksiyonun içerisinde bu argümanlar bir dilim olarak düşünülebilir.

Değişkenli bir fonksiyonu çağırma

Sıfır dahil olmak üzere herhangi bir sayıda argümanla değişkenli bir fonksiyonu çağırabilirsiniz. Bu fonksiyon argümanları bir dilim olarak ele alır.

Örneğin:

package main
import "fmt"

func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

Sonuç:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

Farklı parametrelere sahip değişkenli fonksiyon

Bir fonksiyon içerisinde değişkenli parametreleri normal parametrelerle birleştirebilirsiniz. Değişkenli parametreler her zaman son parametre olmalıdır.

Örneğin:

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

// Hàm với tham số thông thường và variadic 
func greet(prefix string, nums ...int) {
    fmt.Println(prefix)
    for _, n := range nums {
        fmt.Println("Number:", n)
    }
}
func main() {
    greet("Sum of numbers:", 1, 2, 3)
    greet("Another sum:", 4, 5)
    greet("No numbers sum:")
}

Sonuç:

Sum of numbers:
Number: 1
Number: 2
Number: 3
Another sum:
Number: 4
Number: 5
No numbers sum:

Variadic fonksiyonların sınırlamaları

  • Değişkenli fonksiyonların yalnızca bir değişkenli parametresi olabilir ve bu parametre mutlaka son parametre olmalıdır.
  • Tek bir fonksiyon tanımında birden fazla değişkenli parametre olamaz.
Sign up and earn $1000 a day ⋙

Leave a Comment

Erkek ve kadın sembolleri nereden geliyor?

Erkek ve kadın sembolleri nereden geliyor?

Günümüzde popüler olan erkek ve kadın sembollerinin anlamları herkes tarafından bilinmiyor olabilir. Erkek ve kadın sembollerini daha yakından tanıyalım!

Kara deliklerin gizemli tarihi bilim insanları tarafından çözüldü

Kara deliklerin gizemli tarihi bilim insanları tarafından çözüldü

Kara delikler hakkındaki yaygın yanlış anlamalardan biri, onların yalnızca maddeyi değil, aynı zamanda o maddenin tarihini de yuttuğu düşüncesidir. Kara deliklerin tarihi hakkındaki gerçek nihayet çözüldü.

Birden fazla Adobe Mobil uygulamasına ihtiyacınız yok, ihtiyacınız olan tek uygulama Adobe Express!

Birden fazla Adobe Mobil uygulamasına ihtiyacınız yok, ihtiyacınız olan tek uygulama Adobe Express!

Adobe, telefonda 4'ten fazla özel fotoğraf düzenleme uygulaması sunuyor; hepsi birbirine o kadar benziyor ki, hangisine gerçekten ihtiyacınız olduğunu anlamak zor.

Sıradan bir televizyonu akıllı bir televizyona dönüştüren 5 alet

Sıradan bir televizyonu akıllı bir televizyona dönüştüren 5 alet

Sıradan bir televizyon bile birkaç aletle yeni özellikler öğrenebilir ve dakikalar içinde pahalı bir akıllı televizyondan daha iyi hale gelebilir.

Panasonic klima uzaktan kumandası nasıl kullanılır

Panasonic klima uzaktan kumandası nasıl kullanılır

Panasonic klima uzaktan kumandasını doğru şekilde kullanmak klimanın özelliklerinden faydalanmamızı sağlayacaktır.

Gemini, fotoğraflar, dosyalar ve YouTube için Talk Live özelliğini kullanıma sunuyor

Gemini, fotoğraflar, dosyalar ve YouTube için Talk Live özelliğini kullanıma sunuyor

Gemini Live'a "Canlı Sohbet Et" özelliği eklendi ve bu özellik artık Android cihazlarda daha yaygın bir şekilde kullanıma sunulacak. Gemini Live daha önce yalnızca ses girişini kabul ediyordu ancak "Talk Live about" içerik yüklemelerini genişletti

Microsoft Copilot Derin Araştırma ile Yükseltildi

Microsoft Copilot Derin Araştırma ile Yükseltildi

Microsoft sonunda Copilot AI'ya Derin Araştırma işlevini getiriyor. Kullanıcıların herhangi bir konu hakkında kapsamlı, çok adımlı araştırmalar yapmasına olanak tanır.

Photoshopta Bir Fotoğrafı Kalem Taslağına Nasıl Dönüştürürsünüz

Photoshopta Bir Fotoğrafı Kalem Taslağına Nasıl Dönüştürürsünüz

Bu eğitimde Adobe Photoshop kullanarak bir fotoğrafı nasıl kolayca kalem çizimine dönüştürebileceğinizi göstereceğiz.

Golangda değişken fonksiyonlar

Golangda değişken fonksiyonlar

Go'daki değişkenli fonksiyonlar, bir fonksiyona değişken sayıda argüman geçirmenize olanak tanır. Golang'daki değişken fonksiyonlar hakkında bilmeniz gereken her şey burada.

Lien Quan Mobileda renkli harfler nasıl yazılır

Lien Quan Mobileda renkli harfler nasıl yazılır

Lien Quan Mobile'da renkli metin yazmak için bu makaledeki talimatları izleyin. LQ Mobile'da renkli karakterler daha belirgin olacak.

Asla Son Bulmaması Gereken 7 Görev Yöneticisi İşlemi

Asla Son Bulmaması Gereken 7 Görev Yöneticisi İşlemi

Windows 10 Görev Yöneticisi'nin en altında yer alan Windows sistem işlemleri bölümü, bilgisayarınızın düzgün çalışması için gerekli olan birçok önemli işlemi barındırır.

AirPods Pro 3 kalp atış hızı ve vücut sıcaklığı izlemeyi destekleyebilir

AirPods Pro 3 kalp atış hızı ve vücut sıcaklığı izlemeyi destekleyebilir

Apple'ın akıllı giyilebilir ekosisteminde Apple Watch, sağlık alanında pek çok özelliği bünyesinde barındıran ancak AirPods'la bunu başaramayan bir ürün grubu.

Apple, kullanıcıların iOS 16ya yükseltmeden önce iOS 15.7de kalmalarına izin veriyor

Apple, kullanıcıların iOS 16ya yükseltmeden önce iOS 15.7de kalmalarına izin veriyor

Apple, kullanıcıların iOS 16'ya yükseltmeden önce güvenlik güncellemelerini almaya devam ederken iOS 15'te kalmalarına olanak tanıyor.

Intel Core Ultra 5 225H, Core Ultra 7 255H ve Core Ultra 9 285H CPU performans değerlendirme sonuçları Geekbenchte mevcuttur

Intel Core Ultra 5 225H, Core Ultra 7 255H ve Core Ultra 9 285H CPU performans değerlendirme sonuçları Geekbenchte mevcuttur

Intel'in yakında piyasaya süreceği Arrow Lake-H mobil serisinden üç SKU, Geekbench'te test edildi ve tek çekirdekli ve çok çekirdekli performans ve teknik özellikler açısından oldukça etkileyici sonuçlar ortaya çıktı.

Tanıdık lastik bantların üretim sürecinin bu kadar karmaşık ve ayrıntılı olduğunu kim tahmin edebilirdi ki?

Tanıdık lastik bantların üretim sürecinin bu kadar karmaşık ve ayrıntılı olduğunu kim tahmin edebilirdi ki?

Küçük lastik bantlar basit görünüyor, ancak yapım süreci düşündüğünüzden daha karmaşıktır. Aşağıda lastik bantların yapım aşamalarının tamamı gösterilmektedir.