我有这两个文件:daoFactory.gopackage daoimport "sync"type daoFactory struct {}var instance *daoFactory//some functions假ProvisionDao.gopackage daoimport ( "sync" "model")type provisionDao struct {}var instance *provisionDao//some functions两者都在同一个包中:dao.我收到此错误:在此块中重新声明的“实例”显然,原因是instance在两个文件中都声明了变量。我正在开始 Go 编程,但我不知道我应该如何处理这个错误。
1 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
文件对 go 没有真正的意义,与 java、python 和许多其他文件不同,它们只是让你按照你认为合适的方式组织代码。
在 go 中变量是可见的package
,这意味着 的两个声明instance
都是具有包范围可见性的变量。因此编译器抱怨有两个同名的全局变量。
重命名两个实例变量中的任何一个,它就会编译。
强烈建议阅读以上评论中的链接;-)
- 1 回答
- 0 关注
- 213 浏览
添加回答
举报
0/150
提交
取消