3.1 程序执行

一个可执行的Go程序包含一个特殊的包,其包名为main。通过将该main包与其直接或间接导入的所有依赖包(本地或远程)链接在一起,就可以创建一个完整的可运行程序。

main包必须包括main函数声明,以及其他内容。程序执行开始时,将初始化main包和导入的包,然后调用main()函数,该函数可以调用main包中的其他函数,也可以调用其他导入的包中的函数,这些函数又可能导入其他包,等等。

当主函数调用最终返回时,程序退出。

Go的main函数不接受参数,也不返回值,这与C或其他C风格语言不同。

package main

func main() { /* ... */ }

在Go程序中,命令行参数通过os环境变量传递给main函数,而不是作为函数参数。任何特殊的程序退出代码都可以通过显式的os.Exit()调用返回给操作系统。

main包的代码可以包含在一个或多个源文件(在同一目录中)中,就像其他常规包一样。main包不能被其他包导入。

作为惯例,包含main包中的main函数的源文件通常命名为main.go。

最后更新于