Programmeren in Go/Functies

Uit Wikibooks
Naar navigatie springen Naar zoeken springen

Programmeren in Go 100 percent.svg

Commentaar
Pakketten
Variabelen en constanten
Assignments
For
Switch
Functies
Defer
Arrays
Slices
Methodes
Types
Goroutines
Channels
Select

Functies

Kenmerkend voor Go zijn de notatie van parameters en de mogelijkheid om meerdere waardes te "returnen". Een functie wordt gedeclareerd met "func".

/* Meerdere waardes kunnen voor het registreren van fouten gebruikt worden
*/
func Wortel(parameter int) (float, bool) {
    if parameter > 0 { return math.Sqrt(parameter), true }
    return 0, false
}

func Konijn(wortels int) (genoeg bool) { // Als je parameters benoemt kun je ze gebruiken
    if wortels > 10 { genoeg = true }
    return genoeg

}


func Konijn(wortels int) (genoeg bool) {
    if wortels > 10 { genoeg = true  }
    return // genoeg wordt "gereturned", kleiner dan elf -> false
}

func FunctieInFunctie(i int) (int) (
    g := func(j int) (int) { // Bij aanroepen functie Konijn function call Konijn() in body zetten
        h := j * i + 1;
        return h
    }
    return g(i +5) + 5; 
}

func doeDitEnDat(){ // void in meeste talen
    x = x +5
}
Informatie afkomstig van http://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.