go语言中的init函数
init()函数在程序运行时自动被调用,不能在代码中主动调用它。

init()函数会自动调用
package main
import "fmt"
func init() {
fmt.Println("init 1")
}
func init() {
fmt.Println("init 2")
}
func main() {
fmt.Println("main")
}
输出如下
init 1
init 2
main
init()函数的注意点
函数名必须是 init。
不能有参数,也不能有返回值。
不能被显式调用,例如 init() 会编译错误。
不能被赋值给变量,也不能作为参数传递。
可以定义在任意包中,包括 main 包。
同一个包、同一个文件里可以定义多个 init。
一个包即使被多个包导入,也只会初始化一次。
在运行时,被最后导入的包会最先初始化并调用其init()函数,如下图示:

作者:流年少年
出处:https://www.cnblogs.com/ishoulgodo/
本文版权归作者所有,欢迎转载,未经作者同意须保留此段声明,在文章页面明显位置给出原文连接
如果文中有什么错误,欢迎指出。以免更多的人被误导。
出处:https://www.cnblogs.com/ishoulgodo/
想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,或者关注博主,在此感谢!
万水千山总是情,打赏5毛买辣条行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主(っ•̀ω•́)っ✎⁾⁾!
想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!
支付宝
微信
如果文中有什么错误,欢迎指出。以免更多的人被误导。

浙公网安备 33010602011771号