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

golang中的init函数
R R2024-11-17 16:36
相关推荐
卜锦元2 小时前
Golang项目开发过程中好用的包整理归纳(附带不同包仓库地址)Tony Bai6 小时前
“我曾想付钱给 Google 去工作”—— Russ Cox 深度访谈:Go 的诞生、演进与未来海上彼尚9 小时前
Go之路 - 6.go的指针卜锦元15 小时前
Golang中make()和new()的区别与作用?海上彼尚16 小时前
Go之路 - 3.go的数据类型与转换龙门吹雪16 小时前
Go 语言包初始化顺序详解海上彼尚16 小时前
Go之路 - 4.go的集合[完整版]阿里巴啦17 小时前
从零搭建移动端数字人生成应用:React + Go + D‑ID 实战资深web全栈开发19 小时前
Go语言从1.18到1.25版本功能更新详解周杰伦_Jay20 小时前
【字节开源Golang框架Eino】技术详解:架构原理+实战落地+避坑指南(附代码)