日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Go語言中init函數與匿名函數使用淺析_Golang

作者:fiveym ? 更新時間: 2023-03-11 編程語言

init函數

基本介紹

每一個源文件都可以包含一個init函數,該函數會在main函數執行前,被Go運行框架調用,也就是說init會在main函數前被調用

package main
import "fmt"
//init函數,通常可以在init函數中完成初始化工作
func init() {
	fmt.Println("init()")
}
func main() {
	fmt.Println("main()")
}
/*
init()
main()
*/

注意事項和細節

1.如果一個文件同時包含全局變量定義,init函數和main函數,則執行的流程是變量定義->init函數->main函數

2.init函數最主要的作用,就是完成一些初始化的工作

案例

如果main.go和utils.go都含有變量定義init函數時,執行的流程又是怎么樣的?

匿名函數

介紹

Go支持匿名函數,如果我們某個函數知識希望使用一次,可以考慮使用匿名函數,匿名函數也可以實現多次調用。

調用方式

方式1

在定義匿名函數時就直接調用,這種方式匿名函數只能調用一次

package main
import (
	"fmt"

)
func main() {
	res1 := func ( n1 int, n2 int) int {
		return n1 + n2
	}(10, 20)
	fmt.Println("res1=", res1)
}

方式2

將匿名函數賦給一個變量(函數變量),再通過變量來調用匿名函數

package main
import (
	"fmt"
)
func main() {
	//將匿名函數func (n1 int,n2 int)int賦值給a變量
	//則a的數據類型就是函數類型,此時,我們可以通過a完成調用
	a := func ( n1 int, n2 int) int {
		return n1 + n2
	}
	res1 := a(10, 20)
	fmt.Println("res1=", res1)
}

原文鏈接:https://blog.csdn.net/weixin_49750432/article/details/128586652

欄目分類
最近更新