zoukankan      html  css  js  c++  java
  • GOLANG 匿名函数笔记

    在函数内部,没有名字的函数,就是匿名函数

    实现方法1:

    func main(){
        a := "我是无参无返回值的匿名函数"
       x :=  func(){
            //可以获取到匿名函数外部的变量的,包括全局的变量
            fmt.Println(a)
        }
        //调用匿名函数
        x()
    }
    

    实现方法2:

    func main(){
        a := "我是无参无返回值的匿名函数"
        func(){
            //可以获取到匿名函数外部的变量的,包括全局的变量
            fmt.Println(a)
        }
        // 如果直接这样,我go run xx.go。是会报错的。为什么呢,因为我定义了这么一个匿名函数,但是没有使用
    }
    

    实现方法2正确版:

    func main(){
        a := "我是无参无返回值的匿名函数,我通过圆括号调用"
        func(){
            //可以获取到匿名函数外部的变量的,包括全局的变量
            fmt.Println(a)
        }()
        // 注意到上面的括号了吗,这样就不会报错,括号代表我直接调用这个匿名函数
    }
    

    实现方法3:

    var (
    	gfunc = func() {
    		fmt.Println("我是全局的匿名函数")
    	}
    )
    func main(){
        gofunc()
    }
    

    匿名函数是可以传入参数的,也可以用函数类型调用,函数类型调用比较麻烦,还是:=或()比较简单粗暴

  • 相关阅读:
    简单的股票分析系统
    gtest日志在工程项目中的应用
    doctest初次体验
    python写的读取json配置文件
    logbook日志系统
    python3 pyodbc简单使用
    numpy中dtype
    python获取代码行号
    Python操作SQLServer示例(转)
    log4j与log4j.properties的配置
  • 原文地址:https://www.cnblogs.com/ilovepan/p/10388254.html
Copyright © 2011-2022 走看看