跳到主要内容

包初始化

init 函数

概念

  • init: 包初始化时自动调用一次;
  • 调用限制: 不能被代码显式调用;
  • 使用位置: package 中可声明用于初始化的 init 函数;

语法格式

package config

var Loaded bool

func init() {
Loaded = true
}

执行顺序

  • 被导入包: 先于当前包初始化;
  • 当前包变量: 先于当前包 init 初始化;
  • 多个 init: 按文件和声明顺序执行;

顺序摘要

阶段初始化对象
1被导入 package
2当前 package 变量
3当前 package 的 init