Ton*_*ony 5 go multiple-return-values
为什么这是一个有效的程序?
package main
import "fmt"
func giveMeError(limit int) ([]string, error) {
return nil, fmt.Errorf("MY ERROR %d", limit)
}
func main() {
res1, err := giveMeError(1)
if err == nil {
fmt.Println("res", res1)
} else {
fmt.Println("err", err)
}
res2, err := giveMeError(5)
if err == nil {
fmt.Println("res", res2)
} else {
fmt.Println("err", err)
}
}
Run Code Online (Sandbox Code Playgroud)
这不是吗?
package main
import "fmt"
func giveMeError(limit int) ([]string, error) {
return nil, fmt.Errorf("MY ERROR %d", limit)
}
func main() {
res, err := giveMeError(1)
if err == nil {
fmt.Println("res", res)
} else {
fmt.Println("err", err)
}
res, err := giveMeError(5)
if err == nil {
fmt.Println("res", res)
} else {
fmt.Println("err", err)
}
}
Run Code Online (Sandbox Code Playgroud)
抱怨说 ./main.go:18: no new variables on left side of :=
我以为:=不能用来改变现有变量的值?
| 归档时间: |
|
| 查看次数: |
2423 次 |
| 最近记录: |