Latest web development tutorials

Ir cierres de función idioma

Ir cierres de función idioma

la función Ir la función Ir

Ir de soporte de idioma funciones anónimas se pueden utilizar como cierres. función anónima es una declaración "en línea" o la expresión. Superioridad función anónima que se puede utilizar la variable dentro de la función directamente, sin tener que declarar.

En el siguiente ejemplo, creamos un getSequence función (), devuelve otra función. El propósito de esta función es creciente en una variable de cierre i, como sigue:

package main

import "fmt"

func getSequence() func() int {
   i:=0
   return func() int {
      i+=1
     return i  
   }
}

func main(){
   /* nextNumber 为一个函数,函数 i 为 0 */
   nextNumber := getSequence()  

   /* 调用 nextNumber 函数,i 变量自增 1 并返回 */
   fmt.Println(nextNumber())
   fmt.Println(nextNumber())
   fmt.Println(nextNumber())
   
   /* 创建新的函数 nextNumber1,并查看结果 */
   nextNumber1 := getSequence()  
   fmt.Println(nextNumber1())
   fmt.Println(nextNumber1())
}

El código de seguridad se ejecuta como resultado de:

1
2
3
1
2

la función Ir la función Ir