例如,在helloworld
的情况下,包的名称是main,并且还有func main()
语句。但是我也看到了func main()
代码中的代码。但是,代码似乎可以用作独立程序。那么,func main()
包含package main
以外的包语句是什么意思?
答案 0 :(得分:4)
Go编程语言由其规范定义。
The Go Programming Language Specification
通过链接单个未经插入的包来创建完整的程序 将 main 包称为它导入的所有包, 及物动词。 main 包必须具有包名
main
并声明 函数main
,不带参数,不返回任何值。func main() { … }
程序执行从初始化 main 包开始,然后 调用函数
main
。当该函数调用返回时, 程序退出。它不会等待其他(非主)goroutines 完整。
函数名main
在package main
之外没有特殊意义。