技术的路上总是要遇到不少妖怪的,作为一个流氓希望一路披荆斩棘在技术的路上越走越远!

分类 Go 下的文章

Go指针理解(1)

1.指针零值当定义一个指针变量时,var p *int 它的零值是nil,如果p是一个指针变量,p!=nil说明p指向了一个变量,指针也是可以比较的,当两个指针同时指向同一个变量的时候或者两者都等于nil的情况才相等。2.函数传递指针var p = f() func f() *int { v :=1 return &v } 每次调用f都会返回不同的值fmt.Prin...

Go语言之init函数

先看一张图:导入的顺序import --> const --> var --> init() 如果一个包导入了其他包,则首先初始化导入的包。然后初始化当前包的常量。接下来初始化当前包的变量。最后,调用当前包的 init() 函数。Note:一个包可以有多个 init 函数 (在单个文件中或分布在多个文件中),并且按照它们呈现给编译器的顺序被调用。一个包将只初始化一次,即使它...

Go-iota

package main import "fmt" const ( a , b = iota,iota + 1 //iota=0,iota=0,iota+1 = 1 c , d //iota=1,iota=1,iota+1 = 2 下面的表达式和上面一样,当使用iota的时候 e , f ...

Go文件操作

Go语言中对文件读写的相关操作。计算机中的文件是存储在外部介质(通常是磁盘)上的数据集合,文件分为文本文件和二进制文件。打开和关闭文件os.Open()函数能够打开一个文件,返回一个*File和一个err。对得到的文件实例调用close()方法能够关闭文件。package main import ( "fmt" "os" ) fun...

Go包

包介绍包(package)是多个Go源码的集合,是一种高级的代码复用方案,Go语言为我们提供了很多内置包,如fmt、os、io等。包中的标识符(变量名、函数名、结构体、接口等)如果首字母是小写的,表示私有(只能在当前的这个包中使用),首字符大写的标识符可以被外部的包调用。定义包我们还可以根据自己的需要创建自己的包。一个包可以简单理解为一个存放.go文件的文件夹。 该文件夹下面的所有go文件都...