5week-5匿名函数和高阶函数

一.匿名函数定义

  • 匿名函数没有名字,如何调用-->立即调用,或者赋值给一个标识符
  • 匿名函数的作用: 把匿名函数作为一个函数的参数,回调函数
  • 匿名函数的作用:把匿名函数作为另一个函数的返回值,形成闭包
package main

import "fmt"

func main() {
	v := func(x, y int) int {
		return x + y
	}(3, 5) // 声明并调用一次性使用 ;把x+y的结果赋值给v
	fmt.Printf("v: %v\n", v)


        //定义匿名函数,不调用
	//等价于func add(x,y int) int{}
	add := func(x, y int) int { //这种是局部函数,因为 :=不能在全局使用 //把func匿名函数的地址给了add,而后进行调用//add(1,2)可以传参使用  
		return x + y
	}
	fmt.Printf("%T\n", add)

	
	var add1 = func(x, y int) int { //这种是局部函数,因为 :=不能在全局使用
		return x - y
	}
	fmt.Printf("%T\n", add1)

}

二.高阶函数

  • 什么是高阶函数: 返回值是一个函数 形参是函数, 满足2个或1个就是高阶函数

二.匿名函数的应用

posted @ 2023-01-21 22:49  john5的博客  阅读(14)  评论(0编辑  收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css