正如我們所知,Go 不支持可選參數(shù),但是,在使用通道和更具體的緩沖通道時,我意識到make函數(shù)確實接受緩沖區(qū)大小的可選參數(shù)。如果 Go 團(tuán)隊不喜歡可選參數(shù),那么我有點困惑,那么為什么他們支持一個經(jīng)常與這種反模式一起使用的函數(shù)?好吧,為了不偏離原來的問題太多,誰能幫忙解釋一下,在幕后,這是如何工作的?
1 回答

MMMHUHU
TA貢獻(xiàn)1834條經(jīng)驗 獲得超8個贊
make
不是正常功能。new
,?len
,?cap
,?close
,?append
和其他一些都不是。這些是內(nèi)置函數(shù)。
大多數(shù)內(nèi)置函數(shù)和運算符被編譯器重寫以調(diào)用運行時包中的正常函數(shù)。
對于通道,編譯器將調(diào)用重寫為對runtime.makechan或相關(guān)變體之一的make
調(diào)用。
普通函數(shù)不能有可選參數(shù)。
- 1 回答
- 0 關(guān)注
- 149 瀏覽
添加回答
舉報
0/150
提交
取消