猿问

Golang 的引用表达式类型

我有这个


var Map = map[string]Model{}


var (

    mtx    sync.Mutex

    people Map

)

我收到此错误:

有什么方法可以引用地图的类型,如下所示:


var (

    mtx    sync.Mutex

    people reflect.Type(Map)  // <<< ?

)

或者我应该像这样声明类型:


type Map map[string]Model

并像我在第 54 行那样初始化地图?我只是想在文件中初始化地图,而不必在 Init 函数中进行。


慕姐4208626
浏览 141回答 3
3回答

明月笑刀无情

我想你想使用类似的东西type Model struct{}type ModelMap map[string]Modelvar (&nbsp; &nbsp; mtx sync.Mutex&nbsp; &nbsp; people = ModelMap{})

慕姐8265434

您可以使用地图文字来初始化地图:type Model struct {}var people = map[string]Model{&nbsp; &nbsp; "Foo": Model{},&nbsp; &nbsp; "Bar":&nbsp; &nbsp;Model{},}

慕慕森

我不确定我是否理解你的问题,但你可以这样做:&nbsp;var Map = map[string]Model{}&nbsp;var (&nbsp; &nbsp;mtx sync.Mutex&nbsp; &nbsp;people = Map&nbsp;)这种方式people的初始化与Map.
随时随地看视频慕课网APP

相关分类

Go
我要回答