为了账号安全,请及时绑定邮箱和手机立即绑定

是否有将变量分配给指针而不先在单独的行中创建变量的快捷方式?

是否有将变量分配给指针而不先在单独的行中创建变量的快捷方式?

Go
慕慕森 2021-11-15 16:03:43
如果我有这样的结构:type Message struct {    Id      int64    Message string    ReplyTo *int64}然后,如果我确实像这样创建了这个结构的实例:var m Messagem.Id = 1m.Message = "foo bar yo"var replyTo = int64(64)m.ReplyTo = &replyTo然后它会起作用。但我想知道最后一步是否有捷径?我尝试做类似的事情:m.ReplyTo = &int64{64}但它没有用。
查看完整描述

1 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

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


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

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


func NewIntPointer(value int) *int {

  return &value

}


查看完整回答
反对 回复 2021-11-15
  • 1 回答
  • 0 关注
  • 158 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信