先看一個示例:
1、目錄結構
bin
pkg
src
pk1
pk2
function1.go
function2.go
index.go
2、function1.go 文件內容:
package pk3
func Function_test3() {
println("function_test3")
}
3、function2.go 文件內容:
package pk3
func Function_test4() {
println("function_test4")
}
4、index.go 文件內容
package main
import "pk1/pk2"
func main() {
pk3.Function_test4()
}
5、運行 index.go,輸出:
function_test4
得出以下結論:
1、import 導入的參數是路徑,而非包名。
2、盡管習慣將包名和目錄名保證一致,但這不是強制規定;
3、在代碼中引用包成員時,使用包名而非目錄名;
4、同一目錄下,所有源文件必須使用相同的包名稱(因為導入時使用絕對路徑,所以在搜索路徑下,包必須有唯一路徑,但無須是唯一名字);
5、至於文件名,更沒啥限制(擴展名為.go);
