回答

收藏

如何初始化嵌套结构?

技术问答 技术问答 270 人阅读 | 0 人回复 | 2023-09-12

我不知道如何初始化嵌套结构。这里有一个例子:, s9 [, T; g- F, _" {, N) f5 {7 v
    package maintype Configuration struct    Val   string    Proxy struct        Address string        Port    string   func main()    c := &Configuration{          Val: "test",       Proxy:            Address: "addr",           Port:    "80",       }   
    # Q4 }; R& u! m3 @" [5 \& Z
               
, E0 T6 V0 }3 ]    解决方案:                                                                7 g. {/ d# ?0 f/ E% V# ~
                                                                好吧,不要让 Proxy 成为自己结构的具体原因是什么?
$ {0 g9 b7 e5 k8 J无论如何,你有两个选择:
7 f) |- _5 F8 c7 x5 g$ T* b$ r% M# r正确的方法是将代理移动到自己的结构中,例如:1 E4 ~# G0 x- {
    type Configuration struct    Val string    Proxy Proxy}type Proxy struct    Address string    Port    string}func main()    c := &Configuration{          Val: "test",       Proxy: Proxy{              Address: "addr",           Port:    "port",       fmt.Println(c)    fmt.Println(c.Proxy.Address)}
    1 A% a. D$ Q% `4 ?& q+ |% s) _) p
不适合和丑陋的方式,但仍然有效:- F0 S  Q3 }' @6 Q+ w
[code]c := &Configuration{    Val: "test",   Proxy: struct              Address string        Port    string     {                                            Address: "addr",       Port:    "80",}code]
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则