Go语言中init()函数介绍及执行顺序

Posted dqz_nihao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go语言中init()函数介绍及执行顺序相关的知识,希望对你有一定的参考价值。

Go语言中init()初始化函数

init()函数介绍

在Go语言程序执行时导入包语句会自动触发包内部init()函数的调用。
需要注意的是:init()函数没有参数,也没有返回值。
init()函数在程序运行时,自动自动被调用执行,不能在代码中主动调用它。
包初始化执行的顺序如下图所示:

结果是:
10
Hello 沙河

init()函数执行顺序

Go语言包会从main包检查其导入的所有包 ,每个包又可能导入了其他的包。Go编译器由此构建出一个树状的包引用关系,再根据引用顺序决定编译顺序,依次编译这些包的代码。

在运行时,最后导入的包会最先初始化并调用其init()函数,如下图示:

以上是关于Go语言中init()函数介绍及执行顺序的主要内容,如果未能解决你的问题,请参考以下文章

Go语言的执行顺序(转)

Go语言 init 函数

Go语言特殊函数介绍

神奇的 Go init 函数

Golang中的init函数

每次打开office都显示配置进度怎么办