程序的初始化和执行都起始于 main 包。如果 main 包还导入了其它的包,那么就会在编译时将它们依次
导入。有时一个包会被多个包同时导入,那么它只会被导入一次(例如很多包可能都会用到 fmt 包,但
它只会被导入一次,因为没有必要导入多次)。当一个包被导入时,如果该包还导入了其它的包,那么
会先将其它包导入进来,然后再对这些包中的包级常量和变量进行初始化,接着执行 init 函数(如果
有的话),依次类推。等所有被导入的包都加载完毕了,就会开始对 main 包中的包级常量和变量进行
初始化,然后执行 main 包中的 init 函数(如果存在的话),最后执行 main 函数。

golang中的init函数
R R2024-11-17 16:36
相关推荐
leonkay2 小时前
Golang语言闭包完全指南echome8887 小时前
Go 语言并发编程实战:用 Goroutine 和 Channel 构建高性能任务调度器yuanlaile10 小时前
2026后端趋势:Java 老了?Go 才是未来?Mr -老鬼12 小时前
Go存储架构选型实战:单库、双库还是多库?——基于核心元数据+动态表场景的技术解析ithadoop13 小时前
go面试知识点分类整理@PHARAOH13 小时前
HOW - Go 开发入门(二)@PHARAOH13 小时前
HOW - Go 开发入门(四)- ORM 对象关系映射白毛大侠14 小时前
理解 _ “github.com/go-sql-driver/mysql“:Go语言接口编程与init结合的经典案例keep intensify16 小时前
深度解析TCP三次握手四次挥手xUxIAOrUIII16 小时前
【Go每日面试题】内存管理