函数

目录

Go语言的函数声明非常简单,我们看一个例子:

func Add(a int, b int) int {
    return a + b
}

上面就是Go语言的函数的声明,Add是函数名,a和b是Add函数所需要的两个参数,他们的类型分别是int,int。Add函数的返回值是int。 而Add函数的函数体,也就是实现则是 return a + b

注意,上面的Add函数中的参数类型是一样的,因此也可以写成 func Add(a, b int)

而Go语言中还有一类函数叫做 “匿名函数”,他们没有名字,但是可以赋值给变量,当然也可以不赋值直接使用,例如:

func (a, b int) int {
    return a + b
}

这就是一个匿名函数,但是你不能直接使用它,因为没有办法通过名字去调用那个函数,因此, 你有两种选择:

  • 把这个匿名函数赋值给一个变量

    var x = func(a, b int) int { return a + b }
    x(1, 2)
    
  • 把这个匿名函数直接当做参数传给 go 关键字

    go func(a, b int) {
    fmt.Println(a + b)
    }()
    


更多文章
  • 那些年开发的时候踩过的坑
  • (关系型)数据库优化总结
  • 动态规划民科教程
  • Golang 分布式异步任务队列 Machinery 教程
  • 使用geohash完成地理距离计算
  • 2018年就要到了,这一年都做了什么呢?
  • 算法导论阅读笔记 --- 排序算法
  • 短链系统的实现
  • Git HTTPS 如何保存密码
  • 程序员修炼之道 阅读笔记
  • Python开发实践经验
  • Golang实现平滑重启(优雅重启)
  • traefik 教程
  • Web开发系列(十):事务和锁
  • Web开发系列(十一):数据库扩展