「这是我参与2022首次更文挑战的第15天,活动详情查看:2022首次更文挑战」
生命不息,学习不止
题外话
今天是周六,学习爱我,我爱学习,看看是谁在这阳光明媚的一天还在不辞辛苦的耕耘着,是谁还在书海中遨游,没错就是我,贯彻爱与正义的化身,可爱又迷人的反派角色,穿梭在掘金网上的作者,白洞白色的明天,就是这样。
废话不多说,上货
开源项目——go-gin-api
go-gin-api
这是一个主要以gin框架为主,包含了一些常用功能,包括日志,菜单,权限,代码生成的功能的一个项目。
main.go
上回已经说完了相关的配置文件,今天就可以正式的看见代码了
首先必然是项目的入口文件main.go了,如下
别问我为什么下面都是波浪线,因为我手欠把项目删除了,这是新clone下来的,着急写嘛将就一下而已啦
package 是包,这个很简单就不多说了
import中包含了导入的相关包,包括了内置包(未飘红的)和第三方包(飘红的),怎么样,这下感谢我着飘红的线了吧
这里提一下import的作用域,import的作用域是单文件的,作用不了包中的其他文件
我们都知道import可以导入自定义包,但如果两个包相互导入,就会产生类似死锁的情况,这个时候可以使用import _ "name" 这种形式,这种形式会只导入包中的init方法,但却不使用包,并不显示的使用该包的其他内容,也不能够使用该包的其他函数。
import 还支持别名,import . "fmt",将fmt启用别名".",这样就可以直接使用其内容,而不用再添加fmt,如fmt.Println可以直接写成Println
import( . "fmt" )
fmt.Println(“hello world”)
//可以省略的写成
Println(“hello world”)
import( f “fmt” )
//别名操作调用包函数时前缀变成了重命名的前缀,即
f.Println(“hello world”)
fmt 包
这可能是go中最常见的包了(在我的认知中),fmt包含了go中常用格式化输出的相关函数,也就是我们经常使用的打印。
常用的方法有三种
func Print(a ...interface{}) (n int, err error)
func Printf(format string, a ...interface{}) (n int, err error)
func Println(a ...interface{}) (n int, err error)
这里就主要说一下第二种,Printf根据format参数生成格式化的字符串并写入标准输出,返回写入的字节数和遇到的任何错误。
format参数包含不同占位符,整数占位符,浮点数和复数的组成部分(实部和虚部)占位符,字符串占位符,字符切片占位符,指针占位符
这是官方文档的占位符部分,大家可以自己看一下,有许多占位符还是很好用的,像是输出最大字符宽度,就可以不用调用函数截取了,转换进制,安全转移等等。
下一篇就讲,敬请期待
大家看完发现有什么错误,写在下面吧!跟我黑虎阿福比划比划!