使用下面的代码如何将IP结构添加到Server结构的ips数组?
import ( "net" ) type Server struct { id int ips []net.IP } func main() { o := 5 ip := net.ParseIP("127.0.0.1") server := Server{o, ??ip??} }
我甚至让ips阵列正确吗?使用指针更好吗?
切片文字看起来像[]net.IP{ip}
(或者[]net.IP{ip1,ip2,ip3...}
.风格上,带有名称的struct初始化器是首选的,所以Server{id: o, ips: []net.IP{ip}}
更标准.整个代码示例包含这些更改:
package main import ( "fmt" "net" ) type Server struct { id int ips []net.IP } func main() { o := 5 ip := net.ParseIP("127.0.0.1") server := Server{id: o, ips: []net.IP{ip}} fmt.Println(server) }
您询问
我甚至让ips阵列正确吗?使用指针更好吗?
您不需要使用指向切片的指针.切片是包含指针,长度和容量的小结构.