【问题标题】:Golang: expected identifier on left side of :=syntaxGolang::=语法左侧的预期标识符
【发布时间】:2021-09-17 07:59:31
【问题描述】:

我是 Golang 新手,在尝试实现简单的客户端服务器模型时,我在 :=syntax on line 的左侧收到此错误预期标识符:

kvs.listener, err := net.Listen("tcp", ":9999")

具体是kvs下的错误。

我不确定为什么会这样。如果我用简单的 ln(即没有结构)替换 kvs.listener,错误就会消失。有人可以帮我解决这个问题吗?

谢谢!

【问题讨论】:

标签: go


【解决方案1】:

:=short variable declaration。顾名思义,就是声明变量。

kvs.listener 不是您要声明的新变量的标识符,它可能是现有变量(或某个包的变量)的字段。

当您不想要新变量时,使用简单的assignment

kvs.listener, err = net.Listen("tcp", ":9999")

如果err 变量尚不存在,则必须事先声明:

var err error
kvs.listener, err = net.Listen("tcp", ":9999")

【讨论】:

    【解决方案2】:

    试着做喜欢的事

     newVar, err := net.Listen("tcp", ":9999")
     kvs.listener = newVar
    

    其中 newVar 是您未在程序中使用的变量

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-06
      • 2021-03-08
      相关资源
      最近更新 更多