go install golang.org/dl/go1.23.0@latest
Category: go
go_1.21泛型示例
package demo import ( “math/rand” “time” ) // 定义泛型接口 type RandomElementer[T any] interface { // 返回一个随机的元素,如果集合为空,返回(zero, false) RandomElement() (T, bool) } func MustRandom[T any](collection RandomElementer[T]) T { val, ok := collection.RandomElement() if !ok { panic(“collection is empty.”) } return val } // MyList 泛型集合. type MyList[T any] []T // MyList 实现接口RandomElement func (l MyList[T]) RandomElement()… Continue reading go_1.21泛型示例
go 内存对齐
内存对齐是指首地址对齐,而不是说每个变量大小对齐
为减少内存对齐带来的 padding 浪费. 构建结构体时,先写大的成员
go loop,defer 和 闭包
这是一个有趣的例子,用到了 loop, defer 和闭包.
使用delve 调试golang程序
golang 调试
dlv exec bin/go_build_main_go — ckfpp -c 10240000