首页 > 其他分享 >5week-6闭包

5week-6闭包

时间:2023-01-24 21:44:29浏览次数:34  
标签:闭包 函数 int ret2 adder func 5week

package main

import "fmt"

//理解闭包 1 
func adder(x int) func(int) int { //定义1个函数,没有参数,返回值是一个函数
	return func(y int) int { //返回1个函数,并且参数是y ,返回一个int
		x += y
		return x
	}
}

func main() {
	ret := adder(100) //调用了adder函数
	ret2 := ret(200)
	fmt.Println(ret2)
}

标签:闭包,函数,int,ret2,adder,func,5week
From: https://www.cnblogs.com/john5yang/p/17066174.html

相关文章

  • JavaScript学习笔记—闭包
    1.定义闭包就是能访问到外部函数作用域中变量的函数2.什么时候使用当需要隐藏一些不希望被别人访问的内容时就可以使用闭包3.构成要件(1)函数的嵌套(2)内部函数要引用......
  • 5week-5匿名函数和高阶函数
    一.匿名函数定义匿名函数没有名字,如何调用-->立即调用,或者赋值给一个标识符packagemainimport"fmt"funcmain(){ v:=func(x,yint)int{ returnx+y......
  • 函数对象与闭包
    目录函数对象global与nonlocal函数可以被引用函数可以作为容器类型的元素函数可以作为参数传入另外一个函数函数的返回值可以是一个函数闭包函数闭与包闭包的用......
  • 5week-4函数作用域
    一.作用域:可见范围,是表示符的可见范围,常量,变量函数天然就是作用域1.块作用域if,for,switch语句中:=定义的变量,都是只能在当前ifforswitch中使用,离开这个范围......
  • 12.函数式语言特性:迭代器与闭包
    一、闭包:能够捕获环境的匿名函数Rust中的闭包是一种可以存入变量或作为参数传递给其他函数的匿名函数。你在可以在一个地方创建闭包,然后在不同的上下文环境中调用该闭包来......
  • 5week-3可变形参
    //可变参数用途:收集实参放到1个切片里,len=cap;切片不是要让你修改的,而是让你遍历的packagemainimport"fmt"funcfn1(nums...int){ fmt.Printf("%T%v%v%v\n......
  • 5week-2函数形参
    形参是局部变量形参的表示符,只能在此函数中使用,packagemainimport"fmt"funcfn1(xint){ //函数形参标识符一般要写,要在函数中使用,如果不用,就不写和返回值不......
  • C# 中的闭包一个小问题
    usingSystem;varfuns=newAction[10];for(vari=0;i<10;i++)funs[i]=()=>Console.WriteLine(i);foreach(varfninfuns)fn();猜测这段......
  • 闭包 闭包的使用场景
    一、是什么一个函数和对其周围状态(lexicalenvironment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包(closure)也就是说,闭包让你可以在一个内层函数中......
  • Python闭包和装饰器的学习
    之前看了不少的帖子,总是看了这篇帖子说的理解了,换篇帖子说的又不理解了,把人弄晕了,究其原因还是因为没有把底层原理理解。这两个概念总是放在一起说,两者之间肯定是有关系的......