package main
import "fmt"
type Bar struct {
high float64
low float64
}
func main() {
var bars = []Bar{}
bars = []Bar{
{1.0, 2.0},
{1.1, 2.1},
{1.2, 2.2},
{1.3, 2.3},
{1.4, 2.4},
{1.5, 2.5},
}
fmt.Println(bars)
testFunction(&bars)
}
func testFunction(array *[]Bar) {
for i := 0; i < 3; i++ {
fmt.Println(*array[i])
}
}
https://play.golang.org/p/MZwaFALHfuy
为什么我不能访问数组行?
无效操作:array[i](类型 *[]Bar 不支持索引)
最佳答案
将 for 循环中的行更改为 fmt.Println((*array)[i])
*array[i]
会尝试取消引用 [i]
(*array)[i]
将取消引用作为您的指针的 array
。
工作示例:https://play.golang.org/p/yr6WbtS3Aq_c
关于arrays - 结构上的 GoLang 数组索引,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51333313/