GO 入门学习笔记


init 与 main 区别

<h2>init() 与 main() 区别</h2> <ul> <li> <h3>init()</h3> <p>可用于任何包,可定义多个</p> </li> <li> <h3>main()</h3> <p>只能在包 main 中,只能定义一个</p> </li> </ul> <h2>init() 与 main() 相同点</h2> <ul> <li>GO程序自动调用,定义时不能有任何参数和返回值</li> </ul> <h2>init() 与 main() 执行顺序</h2> <ul> <li> <p>同一个GO文件,init() 调用顺序:从上到下</p> </li> <li> <p>同一个包中,不同文件 ,init() 按文件名顺序调用</p> </li> <li> <p>不同包,不相互依赖,按照main包中,先导入后调用的顺序,调用其包中 init()</p> </li> <li> <p>不同包,相互依赖,先调用最早依赖包中 init(),最后调用 main()</p> </li> <li> <p>init() 中使用 println() 或 print(),执行过程不会按照想象中顺序执行,</p> <p>官方只推荐在测试环境中使用,不要在正式环境中使用</p> </li> </ul> <h2>init() 与 main() 执行顺序总结</h2> <ul> <li>init() 不能被其他函数调用,是在 main() 之前自动执行的</li> </ul>

页面列表

ITEM_HTML