golang func main()在main以外的包中?

时间:2018-06-05 17:56:50

标签: go

例如,在helloworld的情况下,包的名称是main,并且还有func main()语句。但是我也看到了func main()代码中的代码。但是,代码似乎可以用作独立程序。那么,func main()包含package main以外的包语句是什么意思?

1 个答案:

答案 0 :(得分:4)

Go编程语言由其规范定义。

  

The Go Programming Language Specification

     

Program execution

     

通过链接单个未经插入的包来创建完整的程序   将 main 包称为它导入的所有包,   及物动词。 main 包必须具有包名main并声明   函数main,不带参数,不返回任何值。

func main() { … }
     

程序执行从初始化 main 包开始,然后   调用函数main。当该函数调用返回时,   程序退出。它不会等待其他(非主)goroutines   完整。

函数名mainpackage main之外没有特殊意义。