此问题在此处已有答案:
golang shortcut syntax for slice literal of pointers to structs(1个答案)
GoLang Empty Struct Construction(1个答案)
How is it that I can initialize a slice of pointers like this?(1个答案)
Go: Confusion about initialization of struct array [duplicate](1个答案)
21小时前关门了。
在下面的代码中:
var v1 []string = []string{"1"}
var v2 map[string][]string = map[string][]string{"a": []string{"1"}}
第二个可以简化为:
var v2 map[string][]string = map[string][]string{"a": {"1"}}
而第一个不能写成:
var v1 []string = {"1"}
我不知道这个简化的语法是在Go语言的哪个版本中加入的,在哪里可以使用,为什么[]string
这个不能简化呢?
1条答案
按热度按时间kuhbmx9i1#
https://go.dev/ref/spec#Composite_literals says:
在数组、切片或Map类型T的复合文字内,如果其与T的元素或键类型相同,则本身是复合文字的元素或Map键可以省略相应文字类型。
相关:Create array of array literal in Golang