如何在golang中的struct中添加项目到数组

 傻缺缺的谭贱儿_452 发布于 2023-02-13 16:37

使用下面的代码如何将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阵列正确吗?使用指针更好吗?

1 个回答
  • 切片文字看起来像[]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阵列正确吗?使用指针更好吗?

    您不需要使用指向切片的指针.切片是包含指针,长度和容量的小结构.

    2023-02-13 16:39 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有