golang 包中的init调用

来源:互联网 发布:江西工业工程学院知乎 编辑:程序博客网 时间:2024/05/14 03:27

一个包中可以存在多个init函数

博主很不负责,3中应该是每个init都会被调用,且顺序固定

1、对同一个go文件的init()调用顺序是从上到下的
2、对同一个package中不同文件是按文件名字符串比较“从小到大”顺序调用各文件中的init()函数,对于
3、对不同的package,如果不相互依赖的话,按照main包中"先import的后调用"的顺序调用其包中的init()
4、如果package存在依赖,则先调用最早被依赖的package中的init()
此顺序至少对golang 1.1.2有效(经本人编程测试过)
0 0
原创粉丝点击