在 Go 语言中,init() 函数用于在包被导入时进行初始化操作。

每个包可以包含多个 init() 函数,它们会按照在代码中出现的顺序依次执行。并且 init() 函数不能被显式调用,是由 Go 运行时自动调用的。

init() 函数常用于执行一些初始化的设置,例如设置全局变量、注册驱动、建立数据库连接等操作。

以下是一个简单的示例:

package mypackage

import "fmt"

var globalVar int

func init() {
    fmt.Println("First init function")
    globalVar = 10
}

func init() {
    fmt.Println("Second init function")
    globalVar = 20
}

在这个示例中,当包 mypackage 被导入时,两个 init 函数会按照定义的顺序依次执行。