Golang基础——工程管理:同一目录和不同目录的文件引用

工程管理:

同级目录,包名一致;不同级目录,包名不同。
同级目录运行多个文件

同一个文件夹下:

-hello
   -main.go
   -test.go


main.go

package main
import "fmt"
func main() {
	fmt.Println("main")
	test111()
}

test.go

package main
import "fmt"
func test111() {
	fmt.Println("test111")
}

main 和 test 的 package 都是 main:

直接:go run main.go ,报错:

undefined: test111

执行:go build .\main.go .\test.go ,执行编译后的 main.exe ,正常运行

执行:go run main.go test.go,正常运行

所以,第一种运行方式,编译器并不把两个文件当一个包运行。

将 hello文件夹,设置成工程目录,也可以运行

不同级文件:

引用函数:导入相关包,函数名首字母大写,才能被别的包引用。

-hello
  -users
    -user.go
  
  main.go

main.go

import (
	"fmt"
	"users"  // 导入users包
)
func main() {
	fmt.Println("main")
	users.Usering()
}

user.go

package users
import "fmt"
func Usering() {  // 函数名首字母大写,才能被别的包引用。
	fmt.Println("登录成功")
}

注意:go找包:到GOPATH环境变量中找包,或GOROOT。如果不设置就找不到包。
go install  // src下执行,bin文件夹中会有src可执行文件。
posted @ 2021-03-11 22:17  pythoner_wl  阅读(2646)  评论(0编辑  收藏  举报