在每一个Go源文件中,都可以定义任意个如下格式的特殊函数:
func init(){
// ...
}
这种特殊的函数不接收任何参数也没有任何返回值,我们也不能在代码中主动调用它。当程序启动的时候,init函数会按照它们声明的顺序自动执行。
initinitinitmain
init
package main
import "fmt"
var x int8 = 10
const pi = 3.14
func init() {
fmt.Println("x:", x)
fmt.Println("pi:", pi)
sayHi()
}
func sayHi() {
fmt.Println("Hello World!")
}
func main() {
fmt.Println("你好,世界!")
}
输出结果:
x: 10
pi: 3.14
Hello World!
你好,世界!