繁体   English   中英

Go:“实例”在此块中重新声明

[英]Go: “instance” redeclared in this block

我有这两个文件:

daoFactory.go

package dao

import "sync"

type daoFactory struct {}

var instance *daoFactory

//some functions

fakeProvisionDao.go

package dao

import (
    "sync"
    "model"
)

type provisionDao struct {
}

var instance *provisionDao

//some functions

两者都在同一个包中: dao

我收到此错误:

“实例”在这个区块重新宣布

显然,原因是在两个文件中都声明了instance变量。 我正在开始编程,我不知道如何处理这个错误。

文件没有真正的意义,不像java,python和许多其他文件,它们只是为了您按照自己的意愿组织代码。

在go变量是可见的package广泛,这意味着instance两个声明都是具有包广泛可见性的变量。 因此编译器抱怨有两个具有相同名称的全局变量。

重命名两个实例变量中的任何一个,它将进行编译。

阅读以上评论中的链接是强烈建议;-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM