美文网首页
06 | 函数

06 | 函数

作者: 刀斧手何在 | 来源:发表于2020-03-21 18:15 被阅读0次

    函数

    函数可以没有参数,也可以接受多个参数,当连续两个或多个函数的已命名形参类型相同时,除最后一个类型以外,其它都可以省略。

    package main
    
    import "fmt"
    
    func add(x, y int) int {
        return x + y
    }
    
    func main() {
        fmt.Println(add(42, 13))
    }
    
    • 函数可以返回多个返回值
    package main
    
    import "fmt"
    
    func swap(x, y string) (string, string) {
        return y, x
    }
    
    func main() {
        a, b := swap("hello", "world")
        fmt.Println(a, b)
    }
    
    • Go 的返回值可被命名,它们会被视作定义在函数顶部的变量(不推荐使用)
    package main
    
    import "fmt"
    
    func split(sum int) (x, y int) {
        x = sum * 4 / 9
        y = sum - x
        return
    }
    
    func main() {
        fmt.Println(split(17))
    }
    
    • 匿名函数
    • 函数是一等公民
    • 函数是一等公民
    • 所有参数都是值传递,slice map channel会有传引用的感觉
    • 函数可以作为变量的值
    • 函数可以作为参数的返回值
    • 计算机程序的构造和解释(书推荐)

    相关文章

      网友评论

          本文标题:06 | 函数

          本文链接:https://www.haomeiwen.com/subject/slujthtx.html