-
如何確定一個(gè) Go 變量會被分配在哪里?
本文作者記錄了 Go 變量分配位置的觀測技巧和 Go 語言設(shè)計(jì)思路。 一、由 iter 包引發(fā)的疑問 最近在 GitHub 上偶然發(fā)現(xiàn)了 Brad Fitzpatrick 的 iter 包,整個(gè)包只有 一個(gè)函數(shù)(一行代碼): 但其中的一行注釋令人費(fèi)解: It does not cause any allocations. 1. 空結(jié)構(gòu)體 我們知道,struct{} 是空結(jié)構(gòu)體(empty struct)。關(guān)于空結(jié)構(gòu)體,Dave Cheney 在 The empty struct 中作了很好地闡述…