在 GOLANG 中,有没有办法使变量的作用域成为包内文件的本地范围?
就我而言,有 2 个文件 ex1.go 和 ex02.go。 ex01.go 定义了一个全局变量
var wg sync.WaitGroup
它在该文件中的函数之间使用。
在另一个文件 ex02.go (与 ex01.go 没有关系,除了 ex01.go 和 ex02.go 属于同一类问题 - 即并发性),我无法为 waitGroup 定义变量
var wg sync.WaitGroup
我收到错误 - “变量名称在此块中重新声明”
有没有办法防止变量名称溢出到其他文件?
出于变量作用域的目的,文件在 Go 中没有任何意义。将包中的所有文件视为串联起来,这(简化的)正是编译之前发生的情况。
这意味着:不,无法将变量的范围限定到文件。
如果您需要两个全局WaitGroup
s,您需要将它们定义为单独的变量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)