![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
goland
文章平均质量分 65
瘦弱的皮卡丘
2018
展开
-
Go 空结构体 struct{} 的使用
1 空结构体占用空间吗?在 Go 语言中,我们可以使用unsafe.Sizeof计算出一个数据类型实例需要占用的字节数。 package mainimport ( "fmt" "unsafe")func main() { fmt.Println(unsafe.Sizeof(struct{}{}))} 运行上面的例子将会输出: $ go run main.go0 也就是说,空..原创 2021-07-30 11:20:26 · 623 阅读 · 0 评论 -
go语言slice剖析 | 切片详解
目录1. 前言2. 热身环节2.1 题目一2.2 题目二2.3 题目三3. Slice实现原理3.1 Slice数据结构3.2 使用make创建Slice3.3 使用数组创建Slice3.4 Slice 扩容3.5 Slice Copy3.5 特殊切片4. 编程Tips5. Slice总结1. 前言Slice又称动态数组,依托数组实现,可以方便的进行扩容、传递等,实际使用中比数组更灵活。正因为灵活,如果不了解其内部实现机制,有可能遭遇莫名的原创 2021-07-28 20:53:26 · 620 阅读 · 0 评论 -
go语言按位取反 | goland按位取反
很多编程语言使用 ~ 作为一元按位取反(NOT)操作符,Go 重用 ^ XOR 操作符来按位取反:// 错误的取反操作func main() { fmt.Println(~2) // bitwise complement operator is ^}// 正确示例func main() { var d uint8 = 2 fmt.Printf("%08b\n", d) // 00000010 fmt.Printf("%08b\n"原创 2021-07-28 19:57:07 · 8525 阅读 · 0 评论