回答

收藏

如何访问全局变量

技术问答 技术问答 291 人阅读 | 0 人回复 | 2023-09-11

不同 如何访问?.go 包/文件中的 main.go 中声明/初始化的变量?一直告诉我变量未定义(我知道全局变量不好,但这只是用作时间戳)
8 k' \1 x7 J7 i$ ^' y% j在 main.go5 {* r* }9 u( _/ R: ^
    var StartTime = time.Now()func main(){...}/ ?; j- [8 u. v/ q1 V3 F9 E
尝试不同的 .go 文件中访问 StartTime 但一直没有定义 StartTime$ ^* |: {( @  T' z) t
                                                                4 v8 k7 a6 w& Y, c
    解决方案:                                                               
2 X) K: {* T, t) C                                                                我会注入 starttime 变量,否则包之间会有循环依赖。
- a7 l% S% ]6 _! a5 [% ~- V* nmain.go
( N1 B0 s0 p* u9 X
    var StartTime = time.Now()func main() {   otherPackage.StartTime = StartTime}
    % u, U+ ]1 t# J8 d& D5 C' i- q; J
其他包.go# n2 ^6 t9 t; x4 I
    var StartTime time.Time
    / d7 w' w( A; Y" |" @( f
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则