我一直在使用"测试"编写测试用例。 Golang包。而且我遇到过必须将数组和函数指针写入表格的情况。
我试过以下:
type myFunctionType func( []float64, []float64 ) float64
var testMatrix = []struct {
dataX []float64
dataY []float64
result float64
myFunction myFunctionType
} {
{ {2, 3}, {8, 7}, 1, doMagicOne},
{2, 3}, {8, 7}, 1, doMagicTwo},
}
但每次我最终都会收到以下错误或其他错误:
复合文字中缺少类型
上面的任何输入?提前谢谢。
答案 0 :(得分:2)
您报告的错误是由于数组中的数组之前缺少类型声明引起的。错误:
复合文字中缺少类型
指的是你声明中的这一点:
{2, 3}
需要指定数组的类型:
[]float64{2, 3}
所以你需要:
var testMatrix = []struct {
dataX []float64
dataY []float64
result float64
myFunction myFunctionType
}{
{[]float64{2, 3}, []float64{8, 7}, 1, doMagicOne},
{[]float64{2, 3}, []float64{8, 7}, 1, doMagicTwo},
}