將參數傳遞給函數閉包
在Go 中,選擇使用參數或閉包建立匿名函數可能會影響變數共享和函數行為。
參數與閉包
何時使用參數
何時使用閉包
範例:閉包與參數
考慮以下程式碼範例,它們說明了閉包與參數之間的差異:
閉包:
for i := 0; i < 3; i++ { go func() { fmt.Println(i) }() }
參數:
for i := 0; i < 3; i++ { go func(v int) { fmt.Println(v) }(i) }
結果:
結論
參數和閉包之間的選擇取決於所需的行為和變數共享要求。當函數需要值的快照時,首選參數。當存取和修改封閉範圍內的變數或在多個呼叫之間共用它們時,閉包非常有用。
以上是Go 中的參數與閉包:何時使用哪一個?的詳細內容。更多資訊請關注PHP中文網其他相關文章!