是否可以在golang中声明包级别的地图?

时间:2015-09-28 23:24:31

标签: go

我想制作一张制作全球地图。我正在尝试以下

package main

import "fmt"

globalMap := make(map[string]string)

func main() {
    globalMap["a"] = "A"
    fmt.Println(globalMap)
}

它在行globalMap := make(map[string]string)上给出了以下编译错误:

expected declaration, found 'IDENT' mas
non-declaration statement outside function body

查看错误我理解它不允许我创建全局地图。什么是创建全球地图的最佳方式?

感谢。

1 个答案:

答案 0 :(得分:17)

您不能在函数体外使用:=语法,但可以使用常规变量声明语法:

var globalMap = make(map[string]string)