golang init()函数详解

栏目: Go · 发布时间: 7年前

内容简介:一、每个包都可以一个或多个init()函数即 每个源⽂件都可以定义⼀个或多个初始化函数二、执行顺序问题

一、每个包都可以一个或多个init()函数

即 每个源⽂件都可以定义⼀个或多个初始化函数

func init() {
        fmt.Println("aaa init函数执行")
    }
      func init() {
        fmt.Println("aaa init函数执行")
    }

二、执行顺序问题

1、同一个包内的init()函数

按照源文件编译顺序决定顺序的(源文件编译默认是按照文件名排序)

golang init()函数详解

image.png

2、不同包的init()函数

按照包导入的依赖关系决定顺序。

1、相同包只会被导入一次

2、导入包的顺序 即是 init()函数的执行顺序

golang init()函数详解

image.png

import包的使用详解:大牛 黄哲先生 的学习之路

https://www.jianshu.com/p/e200fe9b0956
ok  喜欢的话来波喜欢:heart:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

区块链

区块链

长铗、韩锋 / 中信出版社 / 2016-7 / CNY 58.00

《区块链:从数字货币到信用社会》从历史与背景、发展现状、基础原理与技术、应用生态、存在的问题与挑战等方面论述了区块链是怎样立起来的,为什么人人都在谈论区块链,区块链的秘密在哪里、进阶区块链(第二代区块链技术)是什么,区块链怎么玩,怎样从信息互联网走向价值互联网,如何用法规约束和监管区块链,区块链走向何处、争议与挑战,并通过经济、金融、货币、法律、科技哲学等角度来加以分析区块链在各个方面遇到的问题和......一起来看看 《区块链》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具