go 中,初始化的順序,package ->const->var ->init()->main()vim
爲了使用導入的包,首先必須將其初始化。這經過Golang的運行時系統控制,執行順序爲:函數
初始化導入的包(遞歸導入)code
對包塊中聲明的變量進行計算和分配初始值遞歸
執行包中的init函數it
package main import ( "fmt" "log" "os" ) func init() { log.SetOutput(os.Stdout) log.Println("init") log.Println("%v", os.Stdout) } func main() { fmt.Println("vim-go") }