我有这两个文件:
daoFactory.go
package dao
import "sync"
type daoFactory struct {}
var instance *daoFactory
//some functions
Run Code Online (Sandbox Code Playgroud)
fakeProvisionDao.go
package dao
import (
"sync"
"model"
)
type provisionDao struct {
}
var instance *provisionDao
//some functions
Run Code Online (Sandbox Code Playgroud)
两者都在同一个包装中:dao.
我收到此错误:
"实例"在这个区块重新宣布
显然,原因是instance在两个文件中都声明了变量.我正在开始编程,我不知道如何处理这个错误.
tik*_*ike 16
文件没有真正的意义,不像java,python和许多其他文件,它们只是为了您按照自己的意愿组织代码.
在go中,变量是可见的package,这意味着两个声明instance都是具有包广泛可见性的变量.因此编译器抱怨有两个具有相同名称的全局变量.
重命名两个实例变量中的任何一个,它将进行编译.
阅读以上评论中的链接是强烈建议;-)
| 归档时间: |
|
| 查看次数: |
8338 次 |
| 最近记录: |