为了账号安全,请及时绑定邮箱和手机立即绑定

Go 项目中是否需要 main.go?

Go 项目中是否需要 main.go?

Go
智慧大石 2021-09-27 21:21:44
没有 C 语言背景并且只有 Go 语言的“初学者”经验,我试图弄清楚main.go是实际需要还是只是一个约定。我正在寻找创建一个简单的 Web API,但有人可以为我澄清这一点吗?
查看完整描述

2 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

main.go 因为不需要文件。


但是,可执行文件需要main带有的包func main()。


您可以随意命名您的文件名。


例如


myawesomeapp.go


package main


func main() {

  fmt.Println("Hello World")

}

运行go run myawesomeapp.go将按预期工作。


查看完整回答
反对 回复 2021-09-27
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

对于 Web 服务器(可执行文件),您需要有一个package mainfunc main(),但不需要将其称为 main.go - 文件名可以是您想要的任何名称。从语言规范

程序执行

一个完整的程序是通过将一个称为主包的单个未导入包与其导入的所有包传递链接来创建的。main 包必须具有包名称 main 并声明一个不带参数且不返回值的函数 main。

func main() { … }

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


查看完整回答
反对 回复 2021-09-27
  • 2 回答
  • 0 关注
  • 775 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号