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

指向Golang中的Struct

指向Golang中的Struct

Go
慕姐4208626 2021-05-14 08:12:35
实现以下代码时遇到错误:package mainimport (    "fmt" )type Struct struct {    a int    b int}func Modifier(ptr *Struct, ptrInt *int) int {    *ptr.a++    *ptr.b++    *ptrInt++    return *ptr.a + *ptr.b + *ptrInt}func main() {     structure := new(Struct)    i := 0             fmt.Println(Modifier(structure, &i))}这给了我一个关于“无效的ptr.a间接值(类型int)...”的错误。还有为什么编译器没有给我关于ptrInt的错误?提前致谢。
查看完整描述

1 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

做就是了


func Modifier(ptr *Struct, ptrInt *int) int {

    ptr.a++

    ptr.b++

    *ptrInt++

    return ptr.a + ptr.b + *ptrInt

}

你实际上是试图运用++上*(ptr.a)和ptr.a是一个int,而不是一个指针为int。


您可能已经使用过,(*ptr).a++但这不是必需的,因为Go会自动解决ptr.aifptr是一个指针,这就是为什么您没有->Go的原因。


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

添加回答

举报

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