go语言init和main函数
来源:互联网 发布:雪梨的淘宝店铺号 编辑:程序博客网 时间:2024/05/11 15:24
Go里面有两个保留的函数:init函数和main函数。下边就来比较一下两个函数的异同。
相同点:两个函数在定义时不能有任何的参数和返回值,且Go程序自动调用。
不同点:init可以应用于任意包中,且可以重复定义多个。main函数只能用于main包中,且只能定义一个。
下边说一下两个函数的执行顺序:
对同一个go文件的init()调用顺序是从上到下的
对同一个package中不同文件是按文件名字符串比较“从小到大”顺序调用各文件中的init()函数,对于
对不同的package,如果不相互依赖的话,按照main包中”先import的后调用”的顺序调用其包中的init()
如果package存在依赖,则先调用最早被依赖的package中的init(),最后调用main函数
ps:如果init函数中使用了println或者print 你会发现在执行过程中这两个不会按照你想象中的顺序执行。这两个函数官方只推荐在测试环境中使用,对于正式环境不要使用。
0 0
- go语言init和main函数
- go语言init和main函数
- go语言中的main函数和init函数
- go中的main函数和init函数
- go中的main函数和init函数
- go中的main函数和init函数
- go中的main函数和init函数
- go中的main函数和init函数
- go中的main函数和init函数
- golang init和main函数
- Go语言_init_go的init函数
- golang中的init函数和main函数
- [技巧]go语言使用select{}阻塞main函数和for range 做定时器服务
- go/golang main() init()方法的调用
- Go语言技巧:使用select{}阻塞main函数
- go语言学习-函数和闭包
- Go语言学习四:函数和类
- main函数及ISR init分析
- CSS 去掉selecte的蓝色边框
- Android沉浸式处理
- 机器学习课程梳理 (01) ——线性回归
- Eclipse中分支创建并合并
- 正则表达式30分钟入门教程
- go语言init和main函数
- JSP指令
- POJ 1450 Gridland 已被翻译
- android通过相册获取图片oom的问题
- UVa - 11854 - Partitioning by Palindromes (线性动态规划)
- spinner去掉下划线,和更改右下角小图标
- JNI使用java生成*.h文件
- ListView局部更新Item,不调用notifyDataSetChanged()方法
- 显示一个目录内所有文件,及有条件的过滤某些文件