首页 > 解决方案 > Golang::=语法左侧的预期标识符

问题描述

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

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

具体来说,错误在kvs之下。

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

谢谢!

标签: go

解决方案


:=是一个简短的变量声明。顾名思义,就是声明变量。

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

当您不想要新变量时,请使用简单赋值

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

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

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

推荐阅读