【发布时间】:2014-08-12 14:01:52
【问题描述】:
我开始使用 GO 语言,但遇到一个我无法弄清楚的错误。如何创建模块内所有函数都可以使用的全局切片?这是我所拥有的:
package main
import (
"fmt"
)
type Req struct {
Req int
Name string
}
var Reqs []Req
func ReadReqs(fp string) {
var CReq Req;
CReq.Req = 1
CReq.Name = "first"
Reqs := append(Reqs, CReq)
}
func main() {
Reqs := make([]Req, 0)
if len(Reqs) > 0 {
fmt.Println(Reqs[0])
}
fmt.Println(Reqs)
}
由于以下错误,此代码将无法编译:
./question.go:18: Reqs declared and not used
我在想声明 var Reqs []Req 应该声明变量,但它似乎并没有在 ReadReqs 函数中意识到它。我确实意识到全局变量不好,但我想在这个简单的程序中使用全局变量。
【问题讨论】:
标签: go