在 Go 中,呼叫函數時無法指定命名參數。相反,參數必須按預期順序列出。然而,有兩種方法可以使用欄位名稱來實現初始化:
最直接的方法是定義一個包含函數參數的結構體並將該結構體的實例傳遞給函數:
type Params struct { Name string Address string Nick string Age int Value int } func MyFunction(p Params) { // Operations using p.Name, p.Address, etc. } func main() { MyFunction(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
如果修改原始函數不可行,可以建立一個輔助函數來接受結構並將適當的欄位值轉送到原始函數:
func MyFunction(name, address, nick string, age, value int) { // Operations using name, address, etc. } func MyFunction2(p Params) { MyFunction(p.Name, p.Address, p.Nick, p.Age, p.Value) } func main() { MyFunction2(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
兩種方法都允許您使用欄位名稱初始化函數參數,提供靈活性和增強程式碼可讀性。
以上是如何使用字段名初始化Go函數參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!