[Go] 路径、目录名、包名、文件名

先看一个示例:

一、目录结构spa

binblog

pkgio

srcfunction

  pk1class

    pk2test

      function1.goimport

      function2.go扩展

  index.go搜索

二、function1.go 文件内容:引用

package pk3

func Function_test3()  {
	println("function_test3")
}

三、function2.go 文件内容:

package pk3

func Function_test4()  {
	println("function_test4")
}

四、index.go 文件内容

package main

import "pk1/pk2"

func main() {
	pk3.Function_test4()
}

五、运行 index.go,输出:

function_test4

得出如下结论:

一、import 导入的参数是路径,而非包名

二、尽管习惯将包名目录名保证一致,但这不是强制规定;

三、在代码中引用包成员时,使用包名而非目录名

四、同一目录下,全部源文件必须使用相同的包名称(由于导入时使用绝对路径,因此在搜索路径下,包必须有惟一路径,但无须是惟一名字);

五、至于文件名,更没啥限制(扩展名为.go);

相关文章
相关标签/搜索