如下所示,main.go文件中函数如果要调用与main.go同级目录下的func文件夹中func1.go中的Test()函数的具体实现方法。test
|--func
|--func1.go
|--func2.go
|--main.go
在main.go文件中需要写入的是package main
import(
"test/func"
)
func main(){
func.Test()
}
其中需要注意的是:
1、test项目要在golang的$GOPATH路径下。
例如$GOPATH=/home/data
而test文件路径是/homg/data/src/test
那么main.go中import引用的路径就是"test/func"
。如果文件路径是/home/data/src/XXX/test
那么main.go中import引用的路径就是"XXX/test/func"
。可见import中引用的外部文件是根据$GOPATH的相对路径。
$GOPATH
路径下有会生成三个目录,src
、pkg
和bin
。src
存放源代码(比如:.go
.c
.h
.s
等),pkg
编译时生成的中间文件(比如:.a
),bin
编译后生成的可执行文件(为了方便,可以把此目录加入到 $PATH
变量中,如果有多个GOPATH
,那么使用${GOPATH//://bin:}/bin
添加所有的bin目录)。
2、被调用的func1.go文件中Test()函数,首字母要大写。
golang中变量、方法名的首写字母是大写的时候默认可以被外部调用的,首写字母是小写时候默认不能被外部调用。
有疑问加站长微信联系(非本文作者)