包
包的本质实质上就是创建不同的文件夹,来存放程序文件。
go的每一个文件都属于一个包,也就是说go是以包的形式来管理文件和项目目录结构的
包的作用
- 区分相同名字的函数、变量等标识符
- 当程序文件很多时,可以很好的管理项目
- 控制函数、变量等访问范围,即作用域
包的使用
包的搜索目录是在环境变量GOPATH/src
开始
包的使用要点
- 包的名字一般都是全小写
- 在访问其他包的函数、变量时,其语法是 包名.函数名
- Go支持给包去别名,取别名后,原来的包名就不能再使用
- 在同一个包下,不能有相同的函数名和全局变量,否则包重复定义
- 如果要编译成一个可执行程序文件,需要将包名声明为main,如果写的是一个库,包名可以自定义
例如下面,GOPATH=D:\project-go
D:\project-go\src\go_code\project01\package\utils.go1 2 3 4 5 6 7
| package utils
func Cal(num1 int, num2 int) (int) { return num1 + num2 }
|
D:\project-go\src\go_code\project01\package2\utils.go1 2 3 4 5 6 7
| package utils
func Cal(num1 int, num2 int) (int) { return num1 + num2 + 100 }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| package main
import ( "fmt" "go_code/project01/package" utils2 "go_code/project01/package2" )
func main() { var i int = utils.Cal(1, 2) fmt.Println(i)
var i2 int = utils2.Cal(1, 2) fmt.Println(i2) }
|
```