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

go语言怎么区分包、文件、文件夹?

go语言怎么区分包、文件、文件夹?

慕雪6442864 2018-11-14 08:22:05
go语言怎么区分包、文件、文件夹?比如有这么个文件:d:\workspace\www\go_work\src\project_01\hello.gopackage mainimport "fmt"func main(){   fmt.Println("hello") }看教程说程序必须有一个main包,问题:上面这个示例,文件名是hello.go,里面package写的是main,但是并没有什么实际的main包存在,究竟包是指什么?好像也不是一个文件或文件夹,因为也没有main这个文件或文件夹存在。
查看完整描述

1 回答

?
30秒到达战场

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

一个包就是由一个或多个源文件组成,各个源文件都可以访问包内的内容(包括 变量、常量、类型、函数等)。包在源文件层面的组织就是文件夹,通常把一个包的所有源文件放在一个文件夹中。

main 包比较特殊,因为它必须包含一个 main 函数;而且它必须位于程序的根目录。

所以:

你问包究竟是什么。包在程序层面就是所有使用相同 package <package-name> 的源文件组成的代码模块;在源文件层面就是一个文件夹。


go 的源代码组织跟其他语言可能有些差别。初学者的话如果不能一下理解,那就可以不用过多思考,等到深入学习之后,看过更多别人的代码,慢慢就会理解的。

此外,要多看官方文档,官方文档对源代码的组织也有很详细的说明


查看完整回答
反对 回复 2018-11-14
  • 1 回答
  • 0 关注
  • 935 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信