seaconch 最近在学习 Go 语言编程,基础部分尚未看完,不过只看不练,或者只过一遍仍是感受不够牢固,因此决定经过文章来记录、而且梳理一下已了解过的知识。linux
Go 编写的代码文件都以 .go
结尾。编程
这里假设咱们有一个名为: main.go
的文件。windows
那想要将 main.go
生成一个可执行的应用程序,至少要是以下内容 :函数
package main func main() { }
编译生成学习
go build main.go
是能够经过的,成功的生成了 main.exe
。ui
只是这样作并无任何意义,因此说真正意义上咱们要编写一个 Go 程序 至少是下面这样的 :code
package main import "fmt" func main() { fmt.Println("hello go") }
go build main.go
以后运行 main.exe
编译
输出结果:import
hello go
简单点来讲:基础
package main
:表示这个包叫 main
import "fmt"
:导入一个 fmt
包
func main () { ... }
: 一个叫 main
的函数
注意:
package
必须是有效代码的第一行main包
只能有一个import
导入的包,必须是被使用的main 函数
在 main 包
只能有一个,而且确定要有一个1.main包
所在文件必须叫 main.go
吗 ? 答案:不是
2.main包
能够写多个 .go
文件吗 ? 答案:能够
3.同目录
能够有多个包名吗 ? 答案:能够,但不能够同时编译
4.自定义包
应该如何规划目录? 答案:最好是将同一个包的不一样文件(.go
)放在同一个目录,目录名建议以包名命名
5.自定义包
如何导入 main.go 中使用? 答案:自定义包须要添加相对路径,如:"./pkg_1",以后经过pkg_1.方法 / 属性
6.自定义包
能够有 Main
函数吗 ? 答案:能够,彻底不受影响
7.自定义包
如何区分公共成员与私有成员 ? 答案:大写字母开头
公共,其余
私有
8.main包 分红多个.go文件
如何编译 ? 答案:windows 上 go build
,linux 上 go build *.go
以上都是 seaconch 在学习中遇到的问题总结,但愿能帮到你们。