在 golang 中全局声明常量映射
Declaring constant maps in golang globally
在我的主要功能中,我有一个地图,如下所示:
booksPresent := map[string]bool {
"Book One": true,
"Book Two": true,
"Book Three: true,
}
但是,我想全局声明这张地图。我该怎么做?
var booksPresent = map[string]bool{
"Book One": true,
"Book Two": true,
"Book Three": true,
}
与 short variable declarations(只能出现在函数中)不同,变量声明也可以放在顶层。
但请注意,这不会是 constant,Go 中没有映射常量。
查看相关内容:
Declare a constant array
您可以在 main 之上声明 booksPresent
以便它也可以在其他函数中访问,这是一个简单的程序:
package main
import (
"fmt"
)
var booksPresent map[string]bool
func main() {
booksPresent = map[string]bool{
"Book One": true,
"Book Two": true,
"Book Three": true,
}
fmt.Println(booksPresent)
trail()
}
func trail() {
fmt.Println(booksPresent)
}
输出:
map[Book One:true Book Three:true Book Two:true]
map[Book One:true Book Three:true Book Two:true]
在我的主要功能中,我有一个地图,如下所示:
booksPresent := map[string]bool {
"Book One": true,
"Book Two": true,
"Book Three: true,
}
但是,我想全局声明这张地图。我该怎么做?
var booksPresent = map[string]bool{
"Book One": true,
"Book Two": true,
"Book Three": true,
}
与 short variable declarations(只能出现在函数中)不同,变量声明也可以放在顶层。
但请注意,这不会是 constant,Go 中没有映射常量。
查看相关内容:
Declare a constant array
您可以在 main 之上声明 booksPresent
以便它也可以在其他函数中访问,这是一个简单的程序:
package main
import (
"fmt"
)
var booksPresent map[string]bool
func main() {
booksPresent = map[string]bool{
"Book One": true,
"Book Two": true,
"Book Three": true,
}
fmt.Println(booksPresent)
trail()
}
func trail() {
fmt.Println(booksPresent)
}
输出:
map[Book One:true Book Three:true Book Two:true]
map[Book One:true Book Three:true Book Two:true]