完整代碼: package main import ( "net" ) var arrayOfConnections []*Connection type Connection struct { conn net.Conn id int } func main() { serv, _ := net.Listen("tcp", ":8080") defer serv.Close() connectionHandle(serv) } func connectionHandle(serv net.Listener) { conn, _ := serv.Accept() arrayOfConnections = append(&Connection{conn, 1}, 0) conn.Write([]byte("one")) conn.Close() }有一個錯誤:要附加的第一個參數必須是slice;有*連接這部分代碼中的錯誤:arrayOfConnections = append(&Connection {conn,1},0)我是Golang的新手,很難弄清楚我在做什么錯。如何重寫代碼,以便新的連接最終將附加到切片中?在stackoverflow上找不到答案。希望有人能幫忙。謝謝你。
1 回答

開滿天機
TA貢獻1786條經驗 獲得超13個贊
附件應該是這樣的
arrayOfConnections = append(arrayOfConnections, &Connection{conn, 1})
append內置函數跟隨簽名
func append(s []T, vs ...T) []T
當s是要附加的切片,而vs是要附加至s的元素時,然后de function返回一個新的切片,其中附加了所有元素。
- 1 回答
- 0 關注
- 291 瀏覽
添加回答
舉報
0/150
提交
取消