自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 golang 关于defer的一道题

func calc(x, y int) int { fmt.Println(x, y, x+y) return x + y}func main() { a := 1 b := 2 defer calc(a, calc(a, b)) a = 0 defer calc(a, calc(a, b))}执行结果1.defer...

2018-05-29 21:24:43 355

原创 golang 内置函数new()和make()的区别

golang中的new和makemake用于内建类型(map、slice 和channel)的内存分配。new用于各种类型的内存分配。内建函数new本质上说跟其它语言中的同名函数功能一样:new(T)分配了零值填充的T类型的内存空间,并且返回其地址,即一个*T类型的值。用Go的术语说,它返回了一个指针,指向新分配的类型T的零值。有一点非常重要:new返回指针。内建函数make(T, a...

2018-05-26 14:59:10 12066 4

原创 golang 切片合并(1)

func main() { a := []int{1, 2, 3} b := []int{2, 3, 4, 5, 6} a = append(a, b...) fmt.Println(a)}

2018-05-20 10:52:05 25242

原创 golang map键值互换

map键值互换首先想到的方法是构造另一个以原map的key作为value,以原map value为key的map,然后用for-range遍历原map并导入新map。v1版var ( o = map[string]int{"a": 0, "b": 0, "c": 2})func main() { fmt.Println(o) n := map[in...

2018-05-06 11:30:46 4722

原创 golang 闭包 闭包实现斐波那契数列

the way to go小练习——闭包实现斐波那契数列func fib() func() int { var a int = 0 var b int = 1 return func() int { c := a a = b b = a + c return c }}func main() {...

2018-05-06 09:49:23 2272

原创 golang 中的nil

golang中的nilnil在Go中相当与其它语言中的NULL、null和None等,使用中表示某一个变量为空。nil只能赋值给指针、channel、func、interface、map或slice类型的变量。如果将nil赋值给其他变量的时候将会引发panic。 由于Go中interface会同时存储类型和值,如果将一个nil对象赋值给一个interface,这个interface为非ni...

2018-05-04 20:18:56 775

原创 golang slice append小坑

append主要用于给某个切片追加元素注意 如果该切片存储空间(cap)足够,就直接追加,长度(len)变长;如果空间不足,就会*重新开辟内存*,并将之前的元素和新的元素一同拷贝进去...

2018-05-04 13:48:35 1051

原创 golang 函数作为参数传递(回调)

golang 函数作为参数传递(回调)的例子和其他很多语言一样,golang中函数也可以作为其它函数的参数进行传递,然后在其它函数内调用执行,一般称之为回调。语法:以函数签名作为主调函数的形参的类型,即传递一个指向函数的指针func main() { sayhello("john", addperfix)}func addperfix(perfix, name ...

2018-05-04 10:52:01 22627

原创 golang 内置函数

golang 内置函数Golang有一些不需要进行导入操作即可使用的内置函数, 函数 功能 close 用于管道通信,关闭chanal len、cap len 用于返回某个类型的长度或数量(字符串、数组、切片、map 、管道);cap用于返回某个类型的最大容量(只能用于切片和 map) new、make new 和 make 均是用...

2018-05-04 09:46:30 1426

原创 golang defer的执行时机

golang中defer的执行时机 官方文档:“A “defer” statement invokes a function whose execution is deferred to the moment the surrounding function returns, either because the surrounding function executed a retu...

2018-05-04 00:00:48 3456

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除