初级会员
  • 第 48255 位会员
  • quanquan616
  • 2020-02-20 16:00:47
  • Offline
  • 24 25

最近发布的文章

    暂无

最近分享的资源

    暂无

最近发布的项目

    暂无

最近的评论

  • 确实是好文章,感谢大佬分享。其实 2 楼的大佬,通过 C 语言的方式,已经提醒我了。 我个人的理解:直接获取切片中的元素地址,它其实是在访问这个切片,而不是在访问那个特殊的静态小整数数组。 `func dummy(b int) interface{}` 函数将一个 `int` 类型转换为借口类型,如果这个数值是 `[0 ~ 255]` 那么刚好就符合了站长文章中提及的:小整数转换为接口类型时,将不再需要额外的内存分配了。个人想想:因为这个小整数变成接口类型时,就存在于一个特殊的静态数组中。 我个人感觉,这个功能咋有点鸡肋 :sweat_smile: 。只有当小整数转换为接口类型时,才不会有额外的内存分配。直接初始化小整数时,还是会有内存分配。整数转换为接口类型,也是要消耗资源(虽然这个消耗很小很小)。直接让小整数不转换接口类型就能指向这个特殊的静态数组,它不香吗?没能理解官方为什么要这么设置。
  • 刚才修改了一些代码,并用站长文章中所写的 `bench` 思路尝试了一下,确实没有分配内存了。我这个折腾,实际上是在获取数组的内存地址。 从 `void *` 的角度来看,就是指针一个个往后挪,获取到的是数组中,每个索引的地址了。 ![无标题.jpg](https://static.studygolang.com/200930/c42458a17b4f26f17b46d51167331271.jpg)
  • 6 楼的建议是很实用的,我就是这样(当然我是兴趣学,跟专职学差别很大)。我拿着我之前的 Python Web 案例,重新用 Go 全部重写。重写完后,Go 的基础知识、基本语法、特性,也都掌握了。
  • leetcode-cn,这个执行用时很不靠谱。我一个菜鸟写了烂代码,居然显示击败100% ![image.png](https://static.studygolang.com/200521/6418e242036573f9c6d7ba03ea019af5.png)