go学习笔记
ELiKoMc
这个作者很懒,什么都没留下…
展开
-
golang 由字符串生成字节切片的容量大小
golang 由字符串生成字节切片的容量大小原创 2021-12-13 11:11:47 · 471 阅读 · 0 评论 -
golang 数组和切片
golang 数组和切片原创 2021-12-10 18:05:47 · 389 阅读 · 0 评论 -
golang runtime.Caller 学习笔记
runtime.Caller runtime.Caller可以获取到调用时的代码文件路径、行数等信息,在打印日志时常常使用 runtime.Caller源码 // Caller reports file and line number information about function invocations on // the calling goroutine's stack. The argument skip is the number of stack frames // to ascend,原创 2021-12-09 15:09:17 · 468 阅读 · 0 评论 -
使用defer要注意的几个规则
使用defer要注意的几个规则 defer的执行顺序 用defer声明的语句或函数,实际执行是在调用defer的函数执行return语句之后,返回结果到上一层之前。 如果函数使用了多个defer,调用的顺序是先进后出,先声明的后执行,类似栈 defer的参数解析时间点 虽然defer声明的语句或函数会被推迟执行,但是该语句或函数所调用的参数是实时解析的,也就是说,如果参数是一个变量,那么该变量的值就是声明defer时那个变量的值,如果参数也是一个函数,那么这个作为参数的函数会立即执行。 // 参原创 2021-12-08 14:50:09 · 375 阅读 · 0 评论 -
iota使用方法和原理
iota使用方法和原理 简述一下iota? iota是golang的一个关键字,是一个常量计数器,用于枚举的场景,只能出现在const常量声明中,每次换行自增1,每次遇到const声明重置为0 iota的写法是什么? // 多个常量 const ( a = iota // 0 _ b // 2 c // 3 ) // 单个常量 const a = iota iota的源码看过吗?什么原理? // 只有一行代码,位于go/src/builtin/builtin.go中 // iota is原创 2021-12-07 10:32:08 · 277 阅读 · 0 评论