golang 学习的时候很多sample 讲的都是一个文件的go 文件怎么写,但是现实中不可能所有的实现都写到一个文件里面,按照功能的不同,要么拆分成不同的文件,要么拆分成不同的文件。下面有些个人的经验分享下,如果有问题请指正。
这里示范下一个go 文件拆分成同一个包下的两个文件
代码如下:
我们要把 func add(x, y int) 放到另外一个文件里面, 新建文件math.go, 删除main.go 里面的func add(x, y int)
math.go文件如下
main.go 文件如下
这里注意的是main.go 和 math.go 是同一个package main的,他们是同一个package, 同一个package, 同一个package, math.go 里面的add函数要被main 函数调用的话不需要首字母大写, 同一个package下的相互调用是不需要首字母大写的,如果是不同的package的话是需要首字母大写,目录结构也不能像这边一样, 后续会在下篇中说明多个package存在的情况下如何多package同时开发。
编译或者运行, 这边使用*.go 表示编译或者运行所有go 文件,run 会找到main 函数,然后运行它。
go build *.go# 或者go run *.go