我如何在 Go 中做一个文字 *int64?

我有一个带有*int64字段的结构类型。


type SomeType struct {

    SomeField *int64

}

在我的代码中的某个时候,我想声明一个文字(比如,当我知道所说的值应该是 0,或者指向 0 时,你知道我的意思)


instance := SomeType{

    SomeField: &0,

}

...除了这不起作用


./main.go:xx: cannot use &0 (type *int) as type *int64 in field value

所以我试试这个


instance := SomeType{

    SomeField: &int64(0),

}

...但这也不起作用


./main.go:xx: cannot take the address of int64(0)

我该怎么做呢?我能想出的唯一解决方案是使用占位符变量


var placeholder int64

placeholder = 0


instance := SomeType{

    SomeField: &placeholder,

}

显然,我的问题含糊不清。我正在寻找一种从字面上说明a 的方法*int64。这可以在构造函数中使用,或者用于说明文字结构值,甚至可以作为其他函数的参数。但是辅助函数或使用不同类型不是我正在寻找的解决方案。


慕尼黑8549860
浏览 197回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go