![](/img/trans.png)
[英]Does whether or not a field is exported inside an anonymous struct make any difference?
[英]Initializing a field inside an anonymous struct
鑒於這個匿名結構:
var myMap struct {
list map[string]string
someStuff *some.Object
}
我可以在一個聲明中初始化list
和someStuff
嗎?
這不起作用:
var myMap struct {
list map[string]string = make(map[string]string)
someStuff *some.Object = &some.Object{}
}
干得好:
var myMap = struct {
list map[string]string
str string
}{
list: map[string]string{"hello":"string"},
str: "myString",
}
你也可以這樣做:
var myMap = struct {
list map[string]string
str string
}{map[string]string{"hello":"string"}, "myString"}
一個工作的例子: 去PlayGround 。
是的,你可以這樣做。 看看這個例子:
package main
import "fmt"
func main() {
myMap := struct {
list map[string]string
someStuff interface{}
}{
list: make(map[string]string),
someStuff: 2,
}
fmt.Println(myMap)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.