Arbeiten mit der Funktion Arten in Go

Ich wollte eine Funktion von einem bestimmten Typ. Ich habe gefunden, einen Weg, es zu tun, aber es muss noch andere, sauberere und schönere Wege, die nicht mit var. Was sind die alternativen Möglichkeiten, um die Funktion zu deklarieren english Typ Greeting?

package main

import "fmt"

type Greeting func(name string) string

func (g Greeting) exclamation(name string) string {
    return g(name) + "!"
}

var english = Greeting(func(name string) string {
    return "Hello, " + name
})

func main() {
    fmt.Println(english("ANisus"))
    fmt.Println(english.exclamation("ANisus"))  
}

Im Beispiel oben, kann ich nicht Austausch var english = Greeting... mit english := Greeting..., noch kann ich entfernen Sie die Greeting(func ...) und nur die func stand alleine, da ich dann nicht in der Lage sein, um Zugriff auf die Ausrufezeichen Methode.

  • Sie können nicht entfernen var weil Sie erklären english als eine Globale variable.
InformationsquelleAutor ANisus | 2012-02-22
Schreibe einen Kommentar