最新要闻

广告

手机

英国房地产因利率上升陷入困境 房价正以2011年来最快速度下跌

英国房地产因利率上升陷入困境 房价正以2011年来最快速度下跌

宁夏评选出上半年10名“宁夏好人” 95后消防员因敬业奉献入选

宁夏评选出上半年10名“宁夏好人” 95后消防员因敬业奉献入选

家电

Go语言中init函数执行的顺序

来源:博客园


(资料图)

init函数的执行规则:

  1. 对于同一个 go 文件,init函数的执行顺序从上到下,即在代码中先出现的 init函数会先执行。

  2. 对于同一个 package,不同文件是按照文件名字符串比较的结果决定执行顺序的,字符串越小的文件越早被初始化。

  3. 对于不同的 package,如果不相互依赖,则按照 import的顺序决定初始化顺序。

  4. 如果 package 存在依赖,则先初始化被依赖的 package。

  5. 每个 package 只会被初始化一次。

  6. main函数总在所有 init函数执行完后,才会执行。

这些规则确保了在 Go 程序开始执行 main函数之前,所有的变量初始化和 init函数都已经完成。这样可以保证在 main函数运行时,所有的其他包都已经准备就绪。

关键词: