From 5f1c79a4f8cce0e2925c5f3a80845341afb6e5fb Mon Sep 17 00:00:00 2001 From: Cao Haowei <1700013032@pku.edu.cn> Date: Sun, 22 Nov 2020 22:18:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=2005.3.md=20=E4=B8=AD?= =?UTF-8?q?=E7=A4=BA=E4=BE=8B=E7=9A=84=E8=AF=AD=E6=B3=95=E9=94=99=E8=AF=AF?= =?UTF-8?q?=20(#781)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit switch包含初始化语句进行条件判断时,初始化语句后应加上分号,否则会报语法错误 ``` syntax error: cannot use result := calculate() as value ``` 执行环境:go version go1.15.5 linux/amd64 --- eBook/05.3.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eBook/05.3.md b/eBook/05.3.md index c90b1c8..a878465 100644 --- a/eBook/05.3.md +++ b/eBook/05.3.md @@ -144,7 +144,7 @@ switch initialization { 这种形式可以非常优雅地进行条件判断: ```go -switch result := calculate() { +switch result := calculate(); { case result < 0: ... case result > 0: @@ -157,7 +157,7 @@ switch result := calculate() { 在下面这个代码片段中,变量 a 和 b 被平行初始化,然后作为判断条件: ```go -switch a, b := x[i], y[j] { +switch a, b := x[i], y[j]; { case a < b: t = -1 case a == b: t = 0 case a > b: t = 1