```go
package main
import (
"path/filepath"
)
func main() {
pathA := "D:/pathA/xx"
pathB := "D:/pathB/xx"
absPathA, err := filepath.Abs(pathA)
absPathB, err := filepath.Abs(pathB) //报错,err是一个已经存在的变量,不能在 :=的左边
}
// 如果用下面这种方式
func main() {
pathA := "D:/pathA/xx"
pathB := "D:/pathB/xx"
if absPathA, err := filepath.Abs(pathA); err != nil {
panic(err)
}
if absPathA, err := filepath.Abs(pathA); err != nil {
panic(err)
}
fmt.Println(absPathA) // 错误,absPathA变量未定义,作用域导致
}
```
难道我要为每一个可能的错误创建一个新error变量?我想只用err这一个,但是absPathA,absPathB又是一个新的,问题就是一个未定义的变量和一个已存在的变量err不能同时在 := 的左边,好难受。
有什么科学的方法?
2楼 <a href="/user/jarlyyn" title="@jarlyyn">@jarlyyn</a> 还真是,只要左边有一个新变量,就没问题……谢谢啊
#4