gpt4 book ai didi

go - 如何用指针类型的匿名成员初始化 Go 结构?

转载 作者:数据小太阳 更新时间:2023-10-29 03:35:40 24 4
gpt4 key购买 nike

用匿名成员初始化结构的正常方法是这样的:

package main

import "fmt"


type AA struct {
int
xx string
}

func main() {
a := &AA{
int : 1,
xx : "2",
}
fmt.Println(a) // &{1 2}
}

但是,如果类型是指针,就不能再这样做了

package main

import "fmt"


type AA struct {
*int
xx string
}

func main() {
i := 1
a := &AA{
*int : &i,
xx : "2",
}
fmt.Println(a)
}
// .\hello.go:14: invalid field name *int in struct initializer

有没有更好的办法?

最佳答案

*int字段的名称就是int:

package main

import "fmt"

type AA struct {
*int
xx string
}

func main() {
i := 1
a := &AA{
int: &i,
xx: "2",
}
fmt.Println(a)
}

关于go - 如何用指针类型的匿名成员初始化 Go 结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35376025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com