包(package)
go语言的代码是放到.go文件,我们可以通过包把.go文件组织起来
包的导入默认是从gopath/src/下开始找
实验
我们定义一个函数再在其他路径进行调用
定义一个函数
package calc
//一个简单的求和的函数
func Andsum(a, b int) int {
return a + b
}
创建一个新的文件夹来引用这个函数
package main
import (
"awesomeProject/calc"
"fmt"
)
func main() {
ret := calc.Andsum(6, 9) //注意自定义包中的方法名要大写
fmt.Println(ret)
}
包通过别名来引用
一般用于包名不合规,包名不合规就无法引用
package main
import (
calc "awesomeProject/calc"
"fmt"
)
func main() {
ret := calc.Andsum(6, 9) //此处再引入包的方法就需要使用包别名来引用
fmt.Println(ret)
}
注意事项
import导入语句通常放在文件开头包声明语句的下面
导入的包名需要使用双引号包裹起来。
包名是从$GOPATH/src/后开始计算的,使用/进行路径分离
go语言中禁止循环导入包(意思的a导入b,b导入c,c导入d等)
go语言编译是怎么编译的
在go build会先在从main函数开始找起,然后再去找导入包的文件夹,把导入包里面的代码和我自己的代码保存成一个再编译
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类