zhcn 编程语言 Golang Golang 容器 非公開: Go 语言函数变量 – 将函数保存为变量的值

Go 语言函数变量 – 将函数保存为变量的值

在 Go 语言中,函数也是类型,可以像任何其他类型一样存储在变量中。下面的代码定义了一个函数变量f,将一个名为fire()的函数赋值给函数变量f,并调用它,如下所示:函数变量 f 用于实际调用 fire() 函数。这是代码:

 package main

import (
	"fmt"
)

func fire() {
	fmt.Println("fire")
}

func main() {

	var f func()

	f = fire

	f()
} 

代码输出结果:

fire

代码解释:

  • 第 7 行定义了 fire() 函数。
  • 第13行,变量f被声明为func()类型,但此时的f通常被称为“回调函数”,此时f的值为nil。
  • 第15行将fire()函数赋值给函数变量f,f的值就是fire()函数。
  • 第 17 行使用函数变量 f 进行函数调用,以实际调用 fire() 函数。

《Go语言函数变量——将函数保存为变量值》浅显易懂的讲解!您必须观看的最佳 2 个视频

一緒に学ぶGo言語入門 ~その2:パッケージ・変数・関数(前半)~
https://www.youtube.com/watch?v=2aiTzfvEWKg&pp=ygVMIEdvIOiogOiqnumWouaVsOWkieaVsCAtIOmWouaVsOOCkuWkieaVsOOBruWApOOBqOOBl-OBpuS_neWtmOOBl-OBvuOBmSZobD1KQQ%3D%3D
【Go言語 超入門コース】12.関数 |関数を料理ロボットに例えて説明しました【プログラミング初心者向け入門講座】
https://www.youtube.com/watch?v=_RC1T9ZJU_0&pp=ygVMIEdvIOiogOiqnumWouaVsOWkieaVsCAtIOmWouaVsOOCkuWkieaVsOOBruWApOOBqOOBl-OBpuS_neWtmOOBl-OBvuOBmSZobD1KQQ%3D%3D
在 Go 语言中,函数也是类型,可以像任何其他类型一样存储在变量中。下面的代码定义了一个函数变量f,将一个名为fire()的函数赋值给函数变量f,并调用它,如下所示:函数变量 f 用于实际调用 fire() 函数。这是代码:

 package main

import (
	"fmt"
)

func fire() {
	fmt.Println("fire")
}

func main() {

	var f func()

	f = fire

	f()
} 

代码输出结果:

fire

代码解释:

  • 第 7 行定义了 fire() 函数。
  • 第13行,变量f被声明为func()类型,但此时的f通常被称为“回调函数”,此时f的值为nil。
  • 第15行将fire()函数赋值给函数变量f,f的值就是fire()函数。
  • 第 17 行使用函数变量 f 进行函数调用,以实际调用 fire() 函数。

《Go语言函数变量——将函数保存为变量值》浅显易懂的讲解!您必须观看的最佳 2 个视频

一緒に学ぶGo言語入門 ~その2:パッケージ・変数・関数(前半)~
https://www.youtube.com/watch?v=2aiTzfvEWKg&pp=ygVMIEdvIOiogOiqnumWouaVsOWkieaVsCAtIOmWouaVsOOCkuWkieaVsOOBruWApOOBqOOBl-OBpuS_neWtmOOBl-OBvuOBmSZobD1KQQ%3D%3D
【Go言語 超入門コース】12.関数 |関数を料理ロボットに例えて説明しました【プログラミング初心者向け入門講座】
https://www.youtube.com/watch?v=_RC1T9ZJU_0&pp=ygVMIEdvIOiogOiqnumWouaVsOWkieaVsCAtIOmWouaVsOOCkuWkieaVsOOBruWApOOBqOOBl-OBpuS_neWtmOOBl-OBvuOBmSZobD1KQQ%3D%3D