Go 代码如何跨文件调用 main.go 中的变量?
go 代码如何跨文件调用 main.go 中的变量?
在 go 开发中,有时需要在非 main.go 文件中访问 main.go 中定义的变量。例如,在 beego 框架中添加接口时,可能需要获取程序启动时间戳,该变量通常定义在 main.go 文件中。
要解决这个问题,可以借鉴数据库驱动加载机制。具体而言,可以将变量定义在其他包(如 config 包)中,并在 main.go 中进行初始化和引入。其他文件需要使用该变量时,再从相应的包中调用。
下面提供一个代码示例:
// config/test.go package config var starttime = time.now().unix() // other/test.go package other import ( "fmt" "path_to/config" ) func test() { fmt.println("获取config", config.starttime) } // main.go package main import ( "fmt" _ "path_to/config" "path_to/other" ) func main() { other.test() }
在该示例中,starttime 变量定义在 config 包中,并在 main.go 中进行初始化和引入。其他文件(例如 other/test.go)需要使用该变量时,可以按如下方式调用:
fmt.Println("获取config", config.Starttime)
以上就是Go 代码如何跨文件调用 main.go 中的变量?的详细内容,更多请关注其它相关文章!