美文网首页
Go函数(一)

Go函数(一)

作者: 草莓君_ | 来源:发表于2019-07-31 11:57 被阅读0次

关键字func用于定义函数。

  • 无须前置声明。
  • 不支持命名嵌套定义
  • 不支持同名函数重载
  • 不支持默认参数
  • 支持不定长变参
  • 支持多返回值
  • 支持命名返回值
  • 支持匿名函数和闭包

函数属于第一对象(指可在运行期创建,可用作函数参数或返回值,可存入变量的实体),具有相同签名(参数及返回值列表)的视作同一类型。

func hello() {
    println("hello world")
}
func exec(f func())  {
    f()
}
func main() {
    f := hello
    exec(f)
}

从阅读和代码维护的角度来说,使用命名类型更加方便

//定义函数类型
type FormatFunc func(string, ...interface{}) (string,error)

func format(f FormatFunc, s string, a ...interface{}) (string,error)  {
    return f(s, a...)
}

相关文章

  • 三、Go的函数

    三、Go的函数 Go语言最少有一个main()函数。 1、Go的函数定义: 2、函数参数 函数如果使用参数,该变量...

  • Golang学习笔记-函数

    Go函数定义格式如下: 例如: Go可以很灵活的创建函数,并作为另外一个函数的实参: Go支持匿名函数,可作为闭包...

  • 第02天(函数、工程管理)_03

    11_函数类型.go 12_回调函数.go 13_匿名函数和闭包.go 14_闭包捕获外部变量的特点.go 15_...

  • go语言之goroutine

    goroutine 当go 语句执行的时候,其中的go函数会被单独放到一个goroutine中,在这之后该go函数...

  • Go函数(一)

    关键字func用于定义函数。 无须前置声明。 不支持命名嵌套定义 不支持同名函数重载 不支持默认参数 支持不定长变...

  • golang系列教程

    Go包管理 Go开发工具 Go Doc 文档 Go 数组 Go 切片 Go Map Go 类型 Go 函数方法 G...

  • Go语言中的函数 为什么是一等公民

    关键点 Go语言中,支持: 普通函数 匿名函数 闭包 在Go语言中,函数属于一等公民(first-class)? ...

  • Golang的Init函数和Main函数

    Init函数和main函数 go语言中的init函数用于包package初始化。该函数时go语言的一个重要特性in...

  • Golang基础(四)——函数

    Golang基础——函数 @([07] golang)[Go总结] [TOC] go程序中至少有一个函数——mai...

  • 第03天(复合类型)_03

    13_数组做函数参数.go 14_数组指针做函数参数.go 15_切片的长度和容量.go 16_切片的创建.go ...

网友评论

      本文标题:Go函数(一)

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