zoukankan      html  css  js  c++  java
  • Go init函数详解

    Go init函数详解
       init()函数会在每个包完成初始化后自动执行,并且执行优先级比main函数高。init 函数通常被用来:

    • 对变量进行初始化
    • 检查/修复程序的状态
    • 注册
    • 运行一次计算

    包的初始化
    为了使用导入的包,首先必须将其初始化。初始化总是以单线程执行,并且按照包的依赖关系顺序执行。这通过Golang的运行时系统控制,如下图所示:

    1. 初始化导入的包(递归导入)
    2. 对包块中声明的变量进行计算和分配初始值
    3. 执行包中的init函数

    package main
    
    import "fmt"
    
    var _ int64=s()
    
    func init(){
    fmt.Println("init function --->")
    }
    
    func s() int64{
    fmt.Println("function s() --->")
    return 1
    }
    
    func main(){
    fmt.Println("main --->")
    }
    

     执行结果: 

    function s() --->
    init function --->
    main --->
    

      

  • 相关阅读:
    使用pca/lda降维
    交叉验证
    各模型选择及工作流程
    岭回归
    线性回归
    K-临近算法(KNN)
    django中的中间件
    django中form组件
    javascript中的词法分析
    Django之Model操作
  • 原文地址:https://www.cnblogs.com/zxqblogrecord/p/15122912.html
Copyright © 2011-2022 走看看