Go 包的原理和使用
- 包的引出
- 在实际的开发中,我们往往需要在不同的文件中,去调用其它文件的定义的函数,比如 main.go中,去使用 utils.go 文件中的函数,如何实现? --> 包
- 现在有两个程序员共同开发一个 Go 项目。程序员 xiaoming 希望定义函数 Cal ,程序员 xiaoqiang也想定义函数也叫 Cal。两个程序员为此还吵了起来,怎么办? --> 包
- 包的原理图
- 包的本质实际上就是创建不同的文件夹,来存放程序文件。
- 包的原理图
- 包的基本概念
- go 的每一个文件都是属于一个包的
- 也就是说 go 是以包的形式来管理文件和项目目录结构的
- 包的三大作用
- 区分相同名字的函数、变量等标识符
- 当程序文件很多时,可以很好的管理项目
- 控制函数、变量等访问范围,即作用域
- 包的相关说明
- 打包基本语法
- package 包名
- 引入包的基本语法
- import "包的路径"
- 案例演示
- 项目结构:
- utils.go 文件
package utils import ( "fmt" ) //将计算的功能,放到一个函数中,然后在需要使用,调用即可 //为了让其它包的文件使用Cal函数,需要将C大小类似其它语言的public func Cal(n1 float64, n2 float64, operator byte) float64 { var res float64 switch operator { case '+': res = n1 + n2 case '-': res = n1 - n2 case '*': res = n1 * n2 case '/': res = n1 / n2 default: fmt.Println("操作符号错误...") } return res }
- main.go文件
package main import ( "fmt" "go_code/chapter06/fundemo01/utils" ) func main() { var n1 float64 = 1.2 var n2 float64 = 2.3 var operator byte = '+' //调用Cal函数 result := utils.Cal(n1, n2 , operator) fmt.Println("result =", result) }
相关文章
- 11-14使用gevent包实现concurrent.futures.executor 相同的公有方法。组成鸭子类
- 11-14C++ const 和static的总结以及使用
- 11-14理解go的闭包
- 11-14mongoose的date类型和timestamps的使用
- 11-14性能测试工具Locust的介绍和使用
- 11-14formData和input的file结合使用
- 11-14puppeteer的使用,网页转长图和pdf
- 11-14git图形化统计工具 - windows下gitstats的安装和使用
- 11-14第四章 多维存储的SQL和对象使用(二)
- 11-14正则表达式re.findall和re.search的使用---面试