1、map中的元素是无法取地址的,即:map[string]struct类型,取&map["tmp"]是错误的
cannot assign to struct field elem["count"].count in map
2、空结构体struct{}{}是唯一的,地址都是同一个,不分配内存空间,通常可用来做为信号,在chan中传递
3、切片,从数据生成的切片,修改切片中的内容,会相应修改底层数组中的数据,值得注意的是,在对切片执行append后会为切片重新分配底层数据,就是此时再做修改不会影响到最原始的数据内容了
4、虽然一个包中可以有多个init方法,但是建议只保留一个,避免出现多人开发或时间长久导致的不可预知的混乱错误
5、要检测程序是否存在竞态条件,可以在运行或测试程序的时候追加-race标记,检测结果会被打印到输出中。如go test -race