操場上的問題:https: //play.golang.org/p/UKB8f4qGsM我有一些接口,我確定它們有哪種類型(實際上我沒有,所以我必須輸入 switch 它,但為了清楚起見我把它省略了)。如何為接口后面結構中的字段賦值?類型斷言似乎帶走了引用。我也嘗試過使用指針,但這也不起作用,主要是因為我不能鍵入斷言(類型 *inter 不能被類型斷言)并且當我取消引用它時,它甚至使它變得毫無意義......我在 Go 方面沒有那么有經驗,我會很感激我能得到的每一個幫助。
1 回答

慕蓋茨4494581
TA貢獻1850條經驗 獲得超11個贊
您無法更改存儲在接口中的值,您需要使用指向要更改的值的指針:
for i := 0; i < 5; i++ {
slice = append(slice, &b{a: a{name: "Tom"}})
}
for i, _ := range slice {
x := slice[i].(*b)
x.name = "Tim"
}
- 1 回答
- 0 關注
- 219 瀏覽
添加回答
舉報
0/150
提交
取消