Golang 可以把包名去掉吗?
Golang不可以把包名去掉,包名是一种类似命名空间的管理和组织代码的方式,而Golang的包有两种类型,一种是“main”包,该包的可以有唯一的一个“main”函数,这个函数也是程序的入口,另外一种就是非“main”包。
简单的例子
➜ golang echo $GOPATH /Users/master/golang ➜ golang pwd /Users/master/golang ➜ golang tree . ├── bin ├── pkg └── src └── demo └── main.go 4 directories, 1 file ➜ demo cat main.go package main import ( "fmt" ) func main() { fmt.Println("hello world") } ➜ demo go run main.go hello world
从上面的目录结构可以看出,GOPATH为 /Users/master/golang 。在 src 内创建了一个项目 demo。demo 里有一个 main.go 文件。main.go 的第一行声明了这是一个 main 包,因此可以定义一个 main 函数。使用 go run 可以编译并运行 main.go。
自定义包(package )
go 使用 package 来管理源文件。package 必须在一个文件夹内,且一个文件夹内也只能有一个package,但是一个文件夹可以有多个文件。下面自定义一个 package。
➜ demo tree . ├── main.go └── service └── http.go 1 directory, 2 files ➜ demo cat service/http.go package api import "fmt" func HandleReq(){ fmt.Println("api - http.go Handle Request") } ➜ demo cat main.go package main import ( "fmt" "./service" ) func main() { fmt.Println("hello world") api.HandleReq() }
推荐教程:《Go教程》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!