-
如何确定一个 Go 变量会被分配在哪里?
本文作者记录了 Go 变量分配位置的观测技巧和 Go 语言设计思路。 一、由 iter 包引发的疑问 最近在 GitHub 上偶然发现了 Brad Fitzpatrick 的 iter 包,整个包只有 一个函数(一行代码): 但其中的一行注释令人费解: It does not cause any allocations. 1. 空结构体 我们知道,struct{} 是空结构体(empty struct)。关于空结构体,Dave Cheney 在 The empty struct 中作了很好地阐述…