
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