完整代码: 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 关注
- 254 浏览
添加回答
举报
0/150
提交
取消