我需要将切片类型添加到此结构。
type Example struct { text []string } func main() { var arr = []Example { {{"a", "b", "c"}}, } fmt.Println(arr) }
然后我得到
prog.go:11: missing type in composite literal [process exited with non-zero status]
所以指定复合文字
var arr = []Example { {Example{"a", "b", "c"}},
但是仍然出现此错误:
cannot use "a" (type string) as type []string in field value
http://play.golang.org/p/XKv1uhgUId
我该如何解决?如何构造包含array(slice)类型的结构?
这是您正确的Example结构片段:
Example
[]Example{ Example{ []string{"a", "b", "c"}, }, }
让我解释一下。您想切成薄片Example。所以这里是— []Example{}。然后,必须在其中填充Example- Example{}。Example依次由[]string— 组成[]string{"a", "b", "c"}。这只是适当语法的问题。
[]Example{}
Example{}
[]string
[]string{"a", "b", "c"}
希望能有所帮助。