golang 中有的 init 函数会先 main 函数执行,var 会先 init 函数执行,所以执行顺序为 var --> init() --> main() 。
package main
import "fmt"
func init() {
fmt
.Println("init func")
}
func main() {
fmt
.Println("main func")
}
package main
import "fmt"
func init() {
fmt
.Println("init func")
global
= 0
}
func convert() int {
fmt
.Println("convert func")
return 100
}
var global
= convert()
func main() {
fmt
.Println("main func global = ", global
)
}
转载请注明原文地址:https://ipadbbs.8miu.com/read-59780.html