最近我开始学习Go语言,但有一个很大的困惑点:我很难理解何时需要显式地取消引用指针。
例如,我知道.
操作符将处理取消引用指针的情况。
ptr := new(SomeStruct)
ptr.Field = "foo" //Automatically dereferences
在哪些其他情况下,Go会这样做?例如,它似乎对数组有效。
ptr := new([5][5]int)
ptr[0][0] = 1
我无法在规范中找到这个内容,指针部分非常简短,甚至没有涉及解引用。如果有关Go指针解引用规则的任何澄清都将是极好的!