gpt4 book ai didi

go - 是否有一种快捷方式可以将变量分配给指针而无需首先在单独的行中创建变量?

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

如果我有这样的结构:

type Message struct {
Id int64
Message string
ReplyTo *int64
}

然后如果我确实像这样创建了这个结构的实例:

var m Message
m.Id = 1
m.Message = "foo bar yo"

var replyTo = int64(64)
m.ReplyTo = &replyTo

然后它就可以工作了。

但是我想知道最后一步是否有捷径?

我试过做类似的事情:

m.ReplyTo = &int64{64}

但是没有用。

最佳答案

我不认为你可以,因为该值是一个原始值,并且尝试像下面这样一次完成它会是一个语法错误。它试图获取一个的地址,所以这是不可能的。至少我不知道有什么可能的方法。

someInt := &int64(10) // would not compile 

另一种选择是编写一个函数来返回指向原语的指针,如下所示:

func NewIntPointer(value int) *int {
return &value
}

关于go - 是否有一种快捷方式可以将变量分配给指针而无需首先在单独的行中创建变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33090833/

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