import --> const --> var --> init()
一张图了解 Go 语言中的 init () 执行顺序 - 图1

  1. 如果一个包导入了其他包,则首先初始化导入的包。
  2. 然后初始化当前包的常量。
  3. 接下来初始化当前包的变量。
  4. 最后,调用当前包的 init() 函数。

一个包可以有多个 init 函数 (在单个文件中或分布在多个文件中),并且按照它们呈现给编译器的顺序被调用。

一个包将只初始化一次,即使它是从多个包导入的。

D:\Projects\Github\NoobWu\go-samples\go-gin-demo\main.go
image.png


原文作者:Summer 转自链接:https://learnku.com/go/t/47135 版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接。

原文链接

https://stackoverflow.com/a/49831018 https://learnku.com/go/t/47135