为什么lint向(ineffassign)发出警告无效分配
ineffectual assignment to "cfg"在 line 处收到 lint 警告cfg := &utils.Config{}。这是为什么 ?
cfg := &utils.Config{}
env := os.Getenv("TEST")
if strings.EqualFold(env, "INT") {
cfg = utils.GetIntConfig()
} else {
cfg = utils.GetConfig()
}
cgw.Cgw(cfg)
回答
在下面的if语句之后,cfg被写入,因此分配给cfgusing的值cfg := &utils.Config{}永远不会被使用。您正在使用声明可以执行的赋值。
var cfg *utils.Config
...